On Sun, 6 Oct 2024 at 16:02, martin rudalics <rudalics@gmx.at> wrote:

[Apologies for the delay since last time!]

Let us next check whether our event handler
drops events because they come with the same sizes.  With the attached
gtkutil-frame-2.diff and the first frame without minibuffer.

Frame size history from opening first frame without minibuffer:

Frame size history of #<frame  *Minibuf-1* - GNU Emacs at ecls 0x5595b811ad50>
x_create_frame_1 (5), TS=80x25~>1280x875, NS=80x25~>1296x875, IS=80x25~>1296x875, MS=32x70 IH IV
gui_figure_window_size (5), TS=1280x875~>1280x1260, TC=80x25~>80x36, NS=1296x875~>1296x1260, IS=1296x875~>1296x1260, MS=32x70 IH IV
scroll-bar-width (3), NS=1296x1260~>1328x1260, IS=1296x1260~>1328x1260, MS=160x175
scroll-bar-height (3), MS=160x175
menu-bar-lines (2), MS=160x175
x_create_frame_2 (0), MS=160x175
xg_frame_set_char_size, invisible, PS=1328x1260, XS=1328x1260, DS=1328x1260
xg_frame_set_char_size (5), MS=32x70 IH IV
x_make_frame_visible
MapNotify, not hidden & not iconified, PS=1328x1260, DS=1328x1260
ConfigureNotify, PS=1328x1260, XS=1328x1260, DS=1328x1260
xg_frame_resized, unchanged, PS=1328x1260, XS=1328x1260
ConfigureNotify, PS=1328x1260, XS=1328x1258, DS=1328x1260
xg_frame_resized, changed, PS=1328x1260, XS=1328x1258
change_frame_size_1, delayed, PS=1328x1260, XS=1328x1258, DS=1328x1260
change_frame_size (5), TS=1280x1260~>1280x1258, TC=80x36~>80x35, NS=1328x1260~>1328x1258, IS=1328x1260~>1328x1258, MS=32x70 IH IV
menu-bar-lines (2), MS=160x175
xg_frame_set_char_size, visible, PS=1328x1258, XS=1328x1258
 +values, PS=664x654, XS=664x629
ConfigureNotify, PS=1328x1258, XS=1328x1258
xg_frame_resized, unchanged, PS=1328x1258, XS=1328x1258
tool-bar-lines (2), MS=160x175
xg_frame_set_char_size, visible, PS=1328x1258, XS=1328x1258
 +values, PS=664x629, XS=664x670
ConfigureNotify, PS=1328x1258, XS=1328x1258
xg_frame_resized, unchanged, PS=1328x1258, XS=1328x1258
set_window_configuration (4), MS=160x175 IH IV

I wasn't sure exactly what you wanted, so here's the same for the second frame:

Frame size history of #<frame  *Minibuf-1* 0x5963494a84d0>
x_create_frame_1 (5), TS=80x25~>1280x875, NS=80x25~>1296x875, IS=80x25~>1296x875, MS=32x70 IH IV
gui_figure_window_size (5), TS=1280x875~>1280x1260, TC=80x25~>80x36, NS=1296x875~>1296x1260, IS=1296x875~>1296x1260, MS=32x70 IH IV
scroll-bar-width (3), NS=1296x1260~>1328x1260, IS=1296x1260~>1328x1260, MS=160x175
scroll-bar-height (3), MS=160x175
x_create_frame_2 (0), MS=160x175
xg_frame_set_char_size, invisible, PS=1328x1260, XS=1328x1260, DS=1328x1260
xg_frame_set_char_size (5), MS=32x70 IH IV
x_make_frame_visible
MapNotify, not hidden & not iconified, PS=1328x1260, DS=1328x1260
ConfigureNotify, PS=1328x1260, XS=400x374, DS=1328x1260
xg_frame_resized, changed, PS=1328x1260, XS=400x374
change_frame_size_1, delayed, PS=1328x1260, XS=400x374, DS=1328x1260
change_frame_size (5), TS=1280x1260~>352x374, TC=80x36~>22x10, NS=1328x1260~>400x374, IS=1328x1260~>400x374, MS=32x70 IH IV
tool-bar-lines (2), MS=160x175
xg_frame_set_char_size, visible, PS=400x374, XS=400x374
 +values, PS=200x187, XS=200x228
ConfigureNotify, PS=400x374, XS=400x374
xg_frame_resized, unchanged, PS=400x374, XS=400x374
set_window_configuration (4), MS=160x175 IH IV

If you have any idea how to debug mutter on your system, we should be
able to get the cause right from there.

It's possible to turn on debug topics in Mutter at run-time using the built-in Looking Glass debugger (`lg` from "Run Command" prompt).

Having done this, I can see the output in journalctl.

Using xwininfo, I found that the first window is ID 0x5000148 and the second window I opened is ID 0x500031c.

Then, the logs show, grepping for the first ID:

Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x5000148 in move from 50,108 1328x1430 to 50,108 1328x1430
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 has height_inc (34) that does not evenly divide min_height - base_height (340 - 116); thus >
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets gravity 1
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets resize width inc: 16 height inc: 34
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets min size 128 x 340
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets base size 64 x 116
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Updating WM_NORMAL_HINTS for 0x5000148
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x5000148 in move from 50,108 1328x1430 to 50,108 1328x1430
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x5000148 in move from 50,108 1328x1314 to 50,108 1328x1430
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 has height_inc (34) that does not evenly divide min_height - base_height (238 - 116); thus >
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets gravity 1
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets resize width inc: 16 height inc: 34
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets min size 128 x 238
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets base size 64 x 116
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Updating WM_NORMAL_HINTS for 0x5000148
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x5000148 in move from 50,108 1328x1314 to 50,108 1328x1314
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x5000148 in move from 50,108 1328x1314 to 50,108 1328x1314
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x5000148 in move from 50,108 1328x1364 to 50,108 1328x1314
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets gravity 1
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets resize width inc: 16 height inc: 34
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets min size 128 x 102
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets base size 64 x 34
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Updating WM_NORMAL_HINTS for 0x5000148
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets gravity 1
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets resize width inc: 16 height inc: 34
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets min size 128 x 102
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Window 0x5000148 sets base size 64 x 34
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Updating WM_NORMAL_HINTS for 0x5000148
Oct 26 13:33:47 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x5000148 in move from 50,108 1328x1366 to 50,108 1328x1364

and for the second ID:

Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x500031c in move from 130,188 400x512 to 130,188 400x512
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c has height_inc (34) that does not evenly divide min_height - base_height (340 - 116); thus >
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets gravity 1
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets resize width inc: 16 height inc: 34
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets min size 128 x 340
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets base size 64 x 116
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Updating WM_NORMAL_HINTS for 0x500031c
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x500031c in move from 130,188 400x512 to 130,188 400x512
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x500031c in move from 130,188 400x430 to 130,188 400x512
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c has height_inc (34) that does not evenly divide min_height - base_height (238 - 116); thus >
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets gravity 1
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets resize width inc: 16 height inc: 34
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets min size 128 x 238
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets base size 64 x 116
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Updating WM_NORMAL_HINTS for 0x500031c
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x500031c in move from 130,188 400x430 to 130,188 400x456
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x500031c in move from 130,188 400x430 to 130,188 400x456
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Sending synthetic configure notify to 0x500031c with x: 130 y: 244 w: 400 h: 374
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: require_titlebar_visible for 0x500031c toggled to TRUE
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x500031c in move from 0,58 400x430 to 0,0 400x456
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Setting _NET_FRAME_EXTENTS on managed window 0x500031c to left = 0, right = 0, top = 56, bottom = 0
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: require_titlebar_visible for 0x500031c toggled to FALSE
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Constraining 0x500031c in move from 0,0 1328x1258 to 0,0 400x456
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets gravity 1
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets resize width inc: 16 height inc: 34
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets min size 128 x 102
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets base size 64 x 34
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Updating WM_NORMAL_HINTS for 0x500031c
Oct 26 13:33:48 ecls gnome-shell[3227]: GEOMETRY: Window 0x500031c sets min height to 0, which makes no sense

These traces include the "Sending synthetic configure" message you mentioned, hopefully helpful!

(At least good to know that it's easy to turn on debugging in a production build.)

--
https://rrt.sc3d.org