From 65ef0cb9e86d70c61bec2a603f280fcadb951f48 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jonas=20=C3=85dahl?= Date: Sat, 4 Mar 2023 16:44:58 +0100 Subject: [PATCH] constraints: Don't apply titlebar constraint on non-drag user-op move 2d8fa26c8e ("core: Pass "frame action" grab operations as an "unconstrained" grab op") changed the behaviour to treat non-grab related window moving that has the "user action" flag set to still apply the "constrain_titlebar_visible" constraint. The fact that it wasn't applied before was relied upon by some extensions. While it should arguably exist a better API that for such extensions to use that have a bit more predictable behavior, until that is so, restore the old semantics. Part-of: --- src/core/constraints.c | 6 +++--- 1 file changed, 3 insertions(+), 3 deletions(-) diff --git a/src/core/constraints.c b/src/core/constraints.c index 5c04c847e..9a5398d1a 100644 --- a/src/core/constraints.c +++ b/src/core/constraints.c @@ -1778,9 +1778,9 @@ constrain_titlebar_visible (MetaWindow *window, */ unconstrained_user_action = info->is_user_action && - window_drag && - (meta_window_drag_get_grab_op (window_drag) & - META_GRAB_OP_WINDOW_FLAG_UNCONSTRAINED) != 0; + (!window_drag || + (meta_window_drag_get_grab_op (window_drag) & + META_GRAB_OP_WINDOW_FLAG_UNCONSTRAINED) != 0); /* Exit early if we know the constraint won't apply--note that this constraint * is only meant for normal windows (e.g. we don't want docks to be shoved