gtk2/gdk/wayland
Olivier Fourdan b456db8cf4 wayland: Check transient loop
Gdk Wayland backend walks up the transient windows tree, but does not
check for cycles when doing so.

As a result, if two or more windows are transient to each other, the
Wayland gdk backend will enter an infinite loop.

While this is clearly a bug in the application, gtk+/gdk should be more
robust and handle such errors more gracefully.

To avoid looping infinitely at various point in the code, check for a
possible loop when setting the transient relationship and deny the
request to set a window transient for another if that would create a
loop.

Bugzilla: https://bugzilla.gnome.org/show_bug.cgi?id=759299
2015-12-16 14:11:11 +01:00
..
protocol wayland: Use xdg shell protocol from wayland-protocols 2015-11-26 16:54:32 +08:00
gdkapplaunchcontext-wayland.c wayland: Formatting fixes 2015-02-28 00:02:30 -05:00
gdkcursor-wayland.c wayland: Always apply scaling factor to cursor hotspot and dimension 2015-07-20 17:36:38 +08:00
gdkdevice-wayland.c wayland: Improve creation of windowing surface roles 2015-12-15 00:40:21 +01:00
gdkdisplay-wayland.c wayland: Use pointer gestures protocol from wayland-protocols 2015-11-26 16:54:32 +08:00
gdkdisplay-wayland.h wayland: Use xdg shell protocol from wayland-protocols 2015-11-26 16:54:32 +08:00
gdkdnd-wayland.c gdk: Allow passing the start coordinates in drag_begin 2015-12-13 10:39:43 -05:00
gdkeventsource.c wayland: Formatting fixes 2015-02-28 00:02:30 -05:00
gdkglcontext-wayland.c wayland: Allow falling back to compatibility EGL contexts 2015-10-07 16:21:57 +01:00
gdkglcontext-wayland.h gl: Drop profile for gdk_window_create_gl_context() 2015-02-12 12:34:28 +00:00
gdkkeys-wayland.c wayland: Translate virtual modifiers too 2015-11-14 23:26:11 -05:00
gdkprivate-wayland.h wayland: Improve creation of windowing surface roles 2015-12-15 00:40:21 +01:00
gdkscreen-wayland.c wayland: recursively search for the settings schema. 2015-12-14 08:20:04 -05:00
gdkseat-wayland.h wayland: Add GdkSeat implementation 2015-12-15 00:40:21 +01:00
gdkselection-wayland.c wayland: Invert drop_finished/button release call order 2015-12-01 15:49:13 +01:00
gdkwayland.h wayland: Formatting fixes 2015-02-28 00:02:30 -05:00
gdkwaylanddevice.h wayland: Add GdkSeat implementation 2015-12-15 00:40:21 +01:00
gdkwaylanddisplay.h wayland: fix rename of wl_shell to xdg_shell 2014-01-20 14:37:33 -05:00
gdkwaylandglcontext.h GL: Follow naming conventions 2014-10-21 23:48:12 -04:00
gdkwaylandselection.h Drop gdk_wayland_drag_context_get_dnd_window 2015-12-02 00:47:53 -05:00
gdkwaylandwindow.h wayland: Replace wl_shell_surface with xdg_shell 2013-11-18 13:44:20 -05:00
gdkwindow-wayland.c wayland: Check transient loop 2015-12-16 14:11:11 +01:00
Makefile.am wayland: Add GdkSeat implementation 2015-12-15 00:40:21 +01:00
wm-button-layout-translation.c wayland: Set gtk-decoration-layout 2014-06-06 15:32:59 +02:00
wm-button-layout-translation.h wayland: Set gtk-decoration-layout 2014-06-06 15:32:59 +02:00