Subject: Re: bug#42655: 27.1; iconify-frame on a Lucid build may stuck the frame

From: Tino Calancha <[email-masked]>
Date: Sat, 08 Aug 2020 13:52:53 +0200

Eli Zaretskii <[email-masked]> writes:

> Does anyone here have a clue why we don't get MapNotify in the GNOME
> Shell case?
All window managers I have tested so far (except Gnome Shell) agree on the
following:

they send a 'VisibilityNotify event' when you select back the previously
iconified window.

Gnome Shell do not send such an event even when users choose 'Gnome
Classic', which uses a panel that displays the iconified apps.

[Design decision or Gnome bug? I haven't searched that much about this,
but I think gnome Shell should send that event as everyone else: this
migth affect other APPS, not only Emacs]

> Tino, could you please use 'xev' to show which X events _are_ being
> delivered to Emacs after you press M-TAB or do any of the other 2
> gestures that are supposed to de-iconify the frame?
Here is the comparison between window managers.
for easier navigations, I recommend to copy the
following lines and display it inside Emacs in a org mode buffer:

--8<-----------------------------cut here---------------start------------->8---
* xev: fluxbox
** C-z

KeyRelease event, serial 21, synthetic NO, window 0x1a00027,
    root 0x215, subw 0x0, time 5924861, (981,179), root:(4949,427),
    state 0x10, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 21, synthetic NO, window 0x1a00027,
    root 0x215, subw 0x0, time 5924861, (981,179), root:(4949,427),
    state 0x10, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 21, synthetic NO, window 0x1a00027,
    root 0x215, subw 0x0, time 5925229, (981,179), root:(4949,427),
    state 0x14, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

KeyPress event, serial 21, synthetic NO, window 0x1a00027,
    root 0x215, subw 0x0, time 5925229, (981,179), root:(4949,427),
    state 0x14, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XmbLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

PropertyNotify event, serial 21, synthetic NO, window 0x1a00027,
    atom 0x1a8 (_NET_WM_ALLOWED_ACTIONS), time 5925236, state PropertyNewValue

PropertyNotify event, serial 22, synthetic NO, window 0x1a00027,
    atom 0x19b (_NET_WM_STATE), time 5925237, state PropertyNewValue

FocusOut event, serial 23, synthetic NO, window 0x1a00027,
    mode NotifyNormal, detail NotifyNonlinear

PropertyNotify event, serial 23, synthetic NO, window 0x1a00027,
    atom 0x16d (WM_STATE), time 5925237, state PropertyNewValue

UnmapNotify event, serial 23, synthetic NO, window 0x1a00027,
    event 0x1a00027, window 0x1a00027, from_configure NO

ConfigureNotify event, serial 24, synthetic YES, window 0x1a00027,
    event 0x1a00027, window 0x1a00027, (3968,248), width 674, height 680,
    border_width 0, above 0x0, override NO
** De-iconify (M-TAB, M-`, click w/ mouse, etc)

PropertyNotify event, serial 24, synthetic NO, window 0x1a00027,
    atom 0x1a8 (_NET_WM_ALLOWED_ACTIONS), time 5996447, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x1a00027,
    atom 0x19b (_NET_WM_STATE), time 5996447, state PropertyDelete

MapNotify event, serial 24, synthetic NO, window 0x1a00027,
    event 0x1a00027, window 0x1a00027, override NO

VisibilityNotify event, serial 24, synthetic NO, window 0x1a00027,
    state VisibilityPartiallyObscured

PropertyNotify event, serial 24, synthetic NO, window 0x1a00027,
    atom 0x16d (WM_STATE), time 5996449, state PropertyNewValue

VisibilityNotify event, serial 24, synthetic NO, window 0x1a00027,
    state VisibilityUnobscured

FocusIn event, serial 24, synthetic NO, window 0x1a00027,
    mode NotifyWhileGrabbed, detail NotifyNonlinear

KeymapNotify event, serial 24, synthetic NO, window 0x0,
    keys:  109 0   4294967168 0   0   0   0   0   0   0   0   0   0   16  0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

ConfigureNotify event, serial 24, synthetic NO, window 0x1a00027,
    event 0x1a00027, window 0x1a00027, (0,18), width 674, height 680,
    border_width 0, above 0x400eb4, override NO

ConfigureNotify event, serial 24, synthetic YES, window 0x1a00027,
    event 0x1a00027, window 0x1a00027, (3968,248), width 674, height 680,
    border_width 0, above 0x0, override NO

FocusIn event, serial 24, synthetic NO, window 0x1a00027,
    mode NotifyUngrab, detail NotifyAncestor

KeymapNotify event, serial 24, synthetic NO, window 0x0,
    keys:  3   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

* xev: mate
** C-z

KeyRelease event, serial 19, synthetic NO, window 0x3c00028,
    root 0x215, subw 0x0, time 1071389, (99,1997), root:(509,2158),
    state 0x10, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 19, synthetic NO, window 0x3c00028,
    root 0x215, subw 0x0, time 1071389, (99,1997), root:(509,2158),
    state 0x10, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 22, synthetic NO, window 0x3c00028,
    root 0x215, subw 0x0, time 1071805, (99,1997), root:(509,2158),
    state 0x14, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

KeyPress event, serial 22, synthetic NO, window 0x3c00028,
    root 0x215, subw 0x0, time 1071805, (99,1997), root:(509,2158),
    state 0x14, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XmbLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

PropertyNotify event, serial 22, synthetic NO, window 0x3c00028,
    atom 0x202 (_NET_WM_ALLOWED_ACTIONS), time 1071811, state PropertyNewValue

FocusOut event, serial 22, synthetic NO, window 0x3c00028,
    mode NotifyNormal, detail NotifyNonlinear

UnmapNotify event, serial 22, synthetic NO, window 0x3c00028,
    event 0x3c00028, window 0x3c00028, from_configure NO

PropertyNotify event, serial 22, synthetic NO, window 0x3c00028,
    atom 0x1c0 (WM_STATE), time 1071812, state PropertyNewValue

PropertyNotify event, serial 22, synthetic NO, window 0x3c00028,
    atom 0x17e (_NET_WM_STATE), time 1071812, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x3c00028,
    atom 0x17e (_NET_WM_STATE), time 1071813, state PropertyNewValue
** De-iconify (M-TAB, M-`, click w/ mouse, etc)

PropertyNotify event, serial 24, synthetic NO, window 0x3c00028,
    atom 0x202 (_NET_WM_ALLOWED_ACTIONS), time 1140295, state PropertyNewValue

MapNotify event, serial 24, synthetic NO, window 0x3c00028,
    event 0x3c00028, window 0x3c00028, override NO

VisibilityNotify event, serial 24, synthetic NO, window 0x3c00028,
    state VisibilityUnobscured

PropertyNotify event, serial 24, synthetic NO, window 0x3c00028,
    atom 0x1c0 (WM_STATE), time 1140303, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x3c00028,
    atom 0x17e (_NET_WM_STATE), time 1140303, state PropertyNewValue

FocusIn event, serial 24, synthetic NO, window 0x3c00028,
    mode NotifyNormal, detail NotifyNonlinear

KeymapNotify event, serial 24, synthetic NO, window 0x0,
    keys:  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

PropertyNotify event, serial 24, synthetic NO, window 0x3c00028,
    atom 0x17e (_NET_WM_STATE), time 1140305, state PropertyNewValue

* xev: plasma-wayland
** C-z

KeyRelease event, serial 19, synthetic NO, window 0x14000b5,
    root 0x3a1, subw 0x0, time 364008, (-1280,444), root:(1025,698),
    state 0x0, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 19, synthetic NO, window 0x14000b5,
    root 0x3a1, subw 0x0, time 364008, (-1280,444), root:(1025,698),
    state 0x0, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 22, synthetic NO, window 0x14000b5,
    root 0x3a1, subw 0x0, time 364233, (-1280,444), root:(1025,698),
    state 0x4, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

KeyPress event, serial 22, synthetic NO, window 0x14000b5,
    root 0x3a1, subw 0x0, time 364233, (-1280,444), root:(1025,698),
    state 0x4, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XmbLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

PropertyNotify event, serial 22, synthetic NO, window 0x14000b5,
    atom 0x152 (_NET_WM_STATE), time 364234, state PropertyNewValue

FocusOut event, serial 22, synthetic NO, window 0x14000b5,
    mode NotifyNormal, detail NotifyNonlinear

UnmapNotify event, serial 22, synthetic NO, window 0x14000b5,
    event 0x14000b5, window 0x14000b5, from_configure NO

PropertyNotify event, serial 22, synthetic NO, window 0x14000b5,
    atom 0x108 (WM_STATE), time 364235, state PropertyNewValue

PropertyNotify event, serial 22, synthetic NO, window 0x14000b5,
    atom 0x152 (_NET_WM_STATE), time 364235, state PropertyNewValue

** De-iconify (M-TAB, M-`, click w/ mouse, etc)

PropertyNotify event, serial 23, synthetic NO, window 0x14000b5,
    atom 0x152 (_NET_WM_STATE), time 387978, state PropertyNewValue

MapNotify event, serial 23, synthetic NO, window 0x14000b5,
    event 0x14000b5, window 0x14000b5, override NO

VisibilityNotify event, serial 23, synthetic NO, window 0x14000b5,
    state VisibilityUnobscured

PropertyNotify event, serial 23, synthetic NO, window 0x14000b5,
    atom 0x108 (WM_STATE), time 387979, state PropertyNewValue

FocusIn event, serial 23, synthetic NO, window 0x14000b5,
    mode NotifyNormal, detail NotifyNonlinear

KeymapNotify event, serial 23, synthetic NO, window 0x0,
    keys:  4294967221 0   0   0   0   0   0   0   0   0   0   0   0   16  0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

PropertyNotify event, serial 23, synthetic NO, window 0x14000b5,
    atom 0x152 (_NET_WM_STATE), time 387986, state PropertyNewValue

* xev: gnome-shell-gnome-wayland
** C-z

KeyRelease event, serial 20, synthetic NO, window 0x8000ba,
    root 0x3a0, subw 0x0, time 1658527, (-140,569), root:(873,742),
    state 0x0, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 20, synthetic NO, window 0x8000ba,
    root 0x3a0, subw 0x0, time 1658527, (-140,569), root:(873,742),
    state 0x0, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 23, synthetic NO, window 0x8000ba,
    root 0x3a0, subw 0x0, time 1658687, (-140,569), root:(873,742),
    state 0x4, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

KeyPress event, serial 23, synthetic NO, window 0x8000ba,
    root 0x3a0, subw 0x0, time 1658687, (-140,569), root:(873,742),
    state 0x4, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XmbLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

PropertyNotify event, serial 23, synthetic NO, window 0x8000ba,
    atom 0x12d (WM_STATE), time 1658695, state PropertyNewValue

PropertyNotify event, serial 23, synthetic NO, window 0x8000ba,
    atom 0x10d (_NET_WM_STATE), time 1658695, state PropertyNewValue

PropertyNotify event, serial 23, synthetic NO, window 0x8000ba,
    atom 0x193 (_GTK_EDGE_CONSTRAINTS), time 1658695, state PropertyNewValue

FocusOut event, serial 23, synthetic NO, window 0x8000ba,
    mode NotifyNormal, detail NotifyNonlinear

PropertyNotify event, serial 23, synthetic NO, window 0x8000ba,
    atom 0x10d (_NET_WM_STATE), time 1658695, state PropertyNewValue

PropertyNotify event, serial 23, synthetic NO, window 0x8000ba,
    atom 0x193 (_GTK_EDGE_CONSTRAINTS), time 1658695, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x10d (_NET_WM_STATE), time 1658712, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x193 (_GTK_EDGE_CONSTRAINTS), time 1658712, state PropertyNewValue
** De-iconify (M-TAB, M-`, click w/ mouse, etc)

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x12d (WM_STATE), time 1703120, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x10d (_NET_WM_STATE), time 1703120, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x193 (_GTK_EDGE_CONSTRAINTS), time 1703120, state PropertyNewValue

FocusIn event, serial 24, synthetic NO, window 0x8000ba,
    mode NotifyNormal, detail NotifyNonlinear

KeymapNotify event, serial 24, synthetic NO, window 0x0,
    keys:  13  0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x10d (_NET_WM_STATE), time 1703123, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x193 (_GTK_EDGE_CONSTRAINTS), time 1703123, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x10d (_NET_WM_STATE), time 1703145, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x8000ba,
    atom 0x193 (_GTK_EDGE_CONSTRAINTS), time 1703145, state PropertyNewValue

* xev: gnome-shell-gnome-classic
** C-z

KeyRelease event, serial 23, synthetic NO, window 0x22000ba,
    root 0x215, subw 0x0, time 609608, (-1390,576), root:(783,764),
    state 0x0, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyPress event, serial 23, synthetic NO, window 0x22000ba,
    root 0x215, subw 0x0, time 609608, (-1390,576), root:(783,764),
    state 0x0, keycode 105 (keysym 0xffe4, Control_R), same_screen YES,
    XLookupString gives 0 bytes: 
    XmbLookupString gives 0 bytes: 
    XFilterEvent returns: False

KeyRelease event, serial 23, synthetic NO, window 0x22000ba,
    root 0x215, subw 0x0, time 609768, (-1390,576), root:(783,764),
    state 0x4, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

KeyPress event, serial 23, synthetic NO, window 0x22000ba,
    root 0x215, subw 0x0, time 609768, (-1390,576), root:(783,764),
    state 0x4, keycode 52 (keysym 0x7a, z), same_screen YES,
    XLookupString gives 1 bytes: (1a) ""
    XmbLookupString gives 1 bytes: (1a) ""
    XFilterEvent returns: False

PropertyNotify event, serial 23, synthetic NO, window 0x22000ba,
    atom 0x1bb (WM_STATE), time 609783, state PropertyNewValue

PropertyNotify event, serial 23, synthetic NO, window 0x22000ba,
    atom 0x17e (_NET_WM_STATE), time 609783, state PropertyNewValue

PropertyNotify event, serial 23, synthetic NO, window 0x22000ba,
    atom 0x1ca (_GTK_EDGE_CONSTRAINTS), time 609783, state PropertyNewValue

FocusOut event, serial 23, synthetic NO, window 0x22000ba,
    mode NotifyNormal, detail NotifyNonlinear

PropertyNotify event, serial 24, synthetic NO, window 0x22000ba,
    atom 0x17e (_NET_WM_STATE), time 609788, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x22000ba,
    atom 0x1ca (_GTK_EDGE_CONSTRAINTS), time 609788, state PropertyNewValue
** De-iconify (M-TAB, M-`, click w/ mouse, etc)

PropertyNotify event, serial 24, synthetic NO, window 0x22000ba,
    atom 0x1bb (WM_STATE), time 657505, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x22000ba,
    atom 0x17e (_NET_WM_STATE), time 657505, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x22000ba,
    atom 0x1ca (_GTK_EDGE_CONSTRAINTS), time 657505, state PropertyNewValue

FocusIn event, serial 24, synthetic NO, window 0x22000ba,
    mode NotifyWhileGrabbed, detail NotifyNonlinear

KeymapNotify event, serial 24, synthetic NO, window 0x0,
    keys:  126 0   0   0   0   0   2   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

FocusIn event, serial 24, synthetic NO, window 0x22000ba,
    mode NotifyUngrab, detail NotifyNonlinear

KeymapNotify event, serial 24, synthetic NO, window 0x0,
    keys:  3   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

PropertyNotify event, serial 24, synthetic NO, window 0x22000ba,
    atom 0x17e (_NET_WM_STATE), time 657520, state PropertyNewValue

PropertyNotify event, serial 24, synthetic NO, window 0x22000ba,
    atom 0x1ca (_GTK_EDGE_CONSTRAINTS), time 657520, state PropertyNewValue

--8<-----------------------------cut here---------------end--------------->8---