mutter/src
Olivier Fourdan 06f5b6b3e3 wayland: Preserve the event mask on the root window
A window manager must select the SubstructureRedirect mask on the root
window to receive the MapRequest from the X11 clients and manage the
windows. Without this event mask set, a window manager won't be able to
map any new window.

The Wayland selection code in mutter can change/clear the event mask on
the requestor window from a XSelectionRequest event when the window is
not managed by mutter/gnome-shell.

A rogue or simply buggy X11 client may send a XConvertSelection() on the
root window and mutter will happily change/clear its own event mask on
the root window, effectively turning itself into a regular X11 client
unable to map any new X11 window from the other X11 clients.

To avoid this, simply check that the requestor window is not the root
window prior to change/clear the event mask on that window.

https://bugzilla.gnome.org/show_bug.cgi?id=776128
2016-12-15 13:02:11 +01:00
..
backends MetaRendererNative: Flush all pending swap notifies on idle 2016-12-07 16:47:22 +01:00
compositor compositor: End a wayland popup grab when starting a compositor grab 2016-11-02 14:06:41 +01:00
core constraints: Don't early out of custom rule if window can't fit 2016-11-21 12:53:37 +08:00
meta window: Expose Flatpak application ID 2016-10-10 23:35:02 +02:00
tests unit-tests: Fix const compiler warning 2016-03-11 12:26:38 +01:00
ui Always use the default screen 2016-07-23 10:55:02 +08:00
wayland wayland: Preserve the event mask on the root window 2016-12-15 13:02:11 +01:00
x11 delete: Share some code between X11 and wayland 2016-10-10 23:35:02 +02:00
.cvsignore
libmutter.pc.in Fix the merged build 2016-04-27 20:37:47 +02:00
Makefile-tests.am tests: Add unit tests framework runner 2016-02-26 17:52:01 +08:00
Makefile.am wayland: Add common object for device classes 2016-09-15 09:54:55 +08:00
meta-enum-types.c.in Install enum types 2015-07-05 22:01:59 -07:00
meta-enum-types.h.in Install enum types 2015-07-05 22:01:59 -07:00
org.freedesktop.login1.xml MetaLauncher: Don't g_error() on failure 2015-11-06 17:03:59 -05:00
org.gnome.Mutter.DisplayConfig.xml backends: Add flags to MetaMonitorMode 2016-05-13 18:44:45 +02:00
org.gnome.Mutter.IdleMonitor.xml
stamp-mutter-enum-types.h Install enum types 2015-07-05 22:01:59 -07:00