Prevent from frozen frame after `C-z' in Lucid builds
Some WMs (e.g. mutter in Gnome Shell) don't unmap iconized windows, thus we won't get a MapNotify when deconifying them. Check if we are deconifying a window elsewhere (Bug#42655). - src/xterm.c (handle_one_xevent): Check for window deconify when receiving a FocusIn signal.
This commit is contained in:
parent
98e8241992
commit
3c4edfd85e
1 changed files with 14 additions and 0 deletions
14
src/xterm.c
14
src/xterm.c
|
@ -8762,6 +8762,20 @@ handle_one_xevent (struct x_display_info *dpyinfo,
|
|||
goto OTHER;
|
||||
|
||||
case FocusIn:
|
||||
/* Some WMs (e.g. Mutter in Gnome Shell), don't unmap
|
||||
minimized/iconified windows; thus, for those WMs we won't get
|
||||
a MapNotify when unminimizing/deconifying. Check here if we
|
||||
are deconizing a window (Bug42655). */
|
||||
f = any;
|
||||
if (f && FRAME_ICONIFIED_P (f))
|
||||
{
|
||||
SET_FRAME_VISIBLE (f, 1);
|
||||
SET_FRAME_ICONIFIED (f, false);
|
||||
f->output_data.x->has_been_visible = true;
|
||||
inev.ie.kind = DEICONIFY_EVENT;
|
||||
XSETFRAME (inev.ie.frame_or_window, f);
|
||||
}
|
||||
|
||||
x_detect_focus_change (dpyinfo, any, event, &inev.ie);
|
||||
goto OTHER;
|
||||
|
||||
|
|
Loading…
Add table
Reference in a new issue