From beff8f13ed0cf16fa0b22f69de75f83e0378fdf1 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Mon, 22 Jul 2024 12:37:01 +0200 Subject: [PATCH 1/3] Revert "x11/window: Compare input shape to client rect when undecorating" This reverts commit 1f1538be764ec5018b29d31c4486c0649a4e5068. --- src/x11/window-x11.c | 16 +++++++++------- 1 file changed, 9 insertions(+), 7 deletions(-) diff --git a/src/x11/window-x11.c b/src/x11/window-x11.c index adf5075a9b..e7c76dd674 100644 --- a/src/x11/window-x11.c +++ b/src/x11/window-x11.c @@ -2415,7 +2415,6 @@ meta_window_x11_update_input_region (MetaWindow *window) g_autoptr (MtkRegion) region = NULL; MetaWindowX11 *window_x11 = META_WINDOW_X11 (window); MetaWindowX11Private *priv = meta_window_x11_get_instance_private (window_x11); - MtkRectangle bounding_rect = { 0 }; Window xwindow; if (window->decorated) @@ -2427,14 +2426,10 @@ meta_window_x11_update_input_region (MetaWindow *window) return; } xwindow = priv->frame->xwindow; - bounding_rect.width = window->buffer_rect.width; - bounding_rect.height = window->buffer_rect.height; } else { xwindow = priv->xwindow; - bounding_rect.width = priv->client_rect.width; - bounding_rect.height = priv->client_rect.height; } if (META_X11_DISPLAY_HAS_SHAPE (x11_display)) @@ -2478,8 +2473,8 @@ meta_window_x11_update_input_region (MetaWindow *window) else if (n_rects == 1 && (rects[0].x == 0 && rects[0].y == 0 && - rects[0].width == bounding_rect.width && - rects[0].height == bounding_rect.height)) + rects[0].width == window->buffer_rect.width && + rects[0].height == window->buffer_rect.height)) { /* This is the bounding region case. Keep the * region as NULL. */ @@ -2496,6 +2491,13 @@ meta_window_x11_update_input_region (MetaWindow *window) if (region != NULL) { + MtkRectangle bounding_rect; + + bounding_rect.x = 0; + bounding_rect.y = 0; + bounding_rect.width = window->buffer_rect.width; + bounding_rect.height = window->buffer_rect.height; + /* The shape we get back from the client may have coordinates * outside of the frame. The X SHAPE Extension requires that * the overall shape the client provides never exceeds the -- 2.44.0.501.g19981daefd.dirty