summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorDor Askayo <dor.askayo@gmail.com>2021-10-01 23:40:53 +0300
committerDor Askayo <dor.askayo@gmail.com>2021-10-02 00:12:34 +0300
commit98d5aa159e0eb9f433b211044ce30cd612d42734 (patch)
tree51a1ba31a905efda1e8fec6b79a5b8ba9c5a8714
parentc789b6be385c03bd0da110519fa30df6fb69e84b (diff)
downloadmutter-98d5aa159e0eb9f433b211044ce30cd612d42734.tar.gz
xwayland: Fix condition for queuing a window to META_QUEUE_CALC_SHOWING
This logic was changed by accident in df642eb15. The change caused every Xwayland window to be queued to META_QUEUE_CALC_SHOWING on every surface commit. As a result, X11 window management events, including _NET_WM_STATE, were dispatched at clients on every single frame. Fixes https://gitlab.gnome.org/GNOME/mutter/-/issues/1955 Part-of: <https://gitlab.gnome.org/GNOME/mutter/-/merge_requests/2032>
-rw-r--r--src/wayland/meta-xwayland-surface.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/src/wayland/meta-xwayland-surface.c b/src/wayland/meta-xwayland-surface.c
index 4697c9d21..d0325e957 100644
--- a/src/wayland/meta-xwayland-surface.c
+++ b/src/wayland/meta-xwayland-surface.c
@@ -148,7 +148,7 @@ meta_xwayland_surface_pre_apply_state (MetaWaylandSurfaceRole *surface_role,
MetaXwaylandSurface *xwayland_surface = META_XWAYLAND_SURFACE (surface_role);
if (pending->newly_attached &&
- surface->buffer_ref->buffer &&
+ !surface->buffer_ref->buffer &&
xwayland_surface->window)
meta_window_queue (xwayland_surface->window, META_QUEUE_CALC_SHOWING);
}