summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonas Ã…dahl <jadahl@gmail.com>2023-03-04 23:52:57 +0100
committerMarge Bot <marge-bot@gnome.org>2023-03-04 23:45:35 +0000
commitaf9a7741f430fea5e7f0874c93a3ccc9f01cae3b (patch)
tree07cd1572e1a7b3fb7d3d941e1712538618a5c39f
parenta9c9b8935849c10159c4abd5cfb4f88ba9a8ee1d (diff)
downloadmutter-af9a7741f430fea5e7f0874c93a3ccc9f01cae3b.tar.gz
frames: Select SubstructureNotifyMask too
This is the mask that lets us receive among other events the rather important CreateNotify, that tells us about new winows. This has went by rather unnoticed except for cases where multiple windows show up very quickly directly after the frames client spawned, because the drag icon surface cache eventually already did select that particular mask. Make things more reliably by explicitly setting the mask for the events we rely on to function. This fixes flaky stacking tests that map multiple X11 windows in a row. Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2894>
-rw-r--r--src/frames/meta-window-tracker.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/src/frames/meta-window-tracker.c b/src/frames/meta-window-tracker.c
index 56be33790..39de518f6 100644
--- a/src/frames/meta-window-tracker.c
+++ b/src/frames/meta-window-tracker.c
@@ -340,7 +340,8 @@ meta_window_tracker_constructed (GObject *object)
XSelectInput (xdisplay, xroot,
KeyPressMask |
- PropertyChangeMask);
+ PropertyChangeMask |
+ SubstructureNotifyMask);
g_signal_connect (display, "xevent",
G_CALLBACK (on_xevent), object);