mirror of
https://gitlab.gnome.org/GNOME/gtk.git
synced 2024-11-11 11:20:12 +00:00
gdkwindow-x11: Don't set WM_TAKE_FOCUS if accept_focus is FALSE
Otherwise, we'll be in the "Globally Active" mode instead of the "No Input" mode. https://bugzilla.gnome.org/show_bug.cgi?id=710389
This commit is contained in:
parent
a093cd2a22
commit
809aab2c8e
@ -772,9 +772,11 @@ set_wm_protocols (GdkWindow *window)
|
||||
int n = 0;
|
||||
|
||||
protocols[n++] = gdk_x11_get_xatom_by_name_for_display (display, "WM_DELETE_WINDOW");
|
||||
protocols[n++] = gdk_x11_get_xatom_by_name_for_display (display, "WM_TAKE_FOCUS");
|
||||
protocols[n++] = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_PING");
|
||||
|
||||
if (window->accept_focus)
|
||||
protocols[n++] = gdk_x11_get_xatom_by_name_for_display (display, "WM_TAKE_FOCUS");
|
||||
|
||||
#ifdef HAVE_XSYNC
|
||||
if (GDK_X11_DISPLAY (display)->use_sync)
|
||||
protocols[n++] = gdk_x11_get_xatom_by_name_for_display (display, "_NET_WM_SYNC_REQUEST");
|
||||
@ -3489,7 +3491,10 @@ gdk_x11_window_set_accept_focus (GdkWindow *window,
|
||||
|
||||
if (!GDK_WINDOW_DESTROYED (window) &&
|
||||
WINDOW_IS_TOPLEVEL_OR_FOREIGN (window))
|
||||
update_wm_hints (window, FALSE);
|
||||
{
|
||||
update_wm_hints (window, FALSE);
|
||||
set_wm_protocols (window);
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
|
Loading…
Reference in New Issue
Block a user