aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFurkan Sahin <furkan-dev@proton.me>2025-10-23 14:03:36 -0400
committerFurkan Sahin <furkan-dev@proton.me>2025-10-23 14:03:36 -0400
commit8d5eacbf53584d8d87c83cbe03d823f642e07dde (patch)
tree0a778ef16c91e7957cf7432a2e87640ceb7f608d
parent470415e8a4d255d472c4eb6a49cc9f122ddb89cc (diff)
xdg-shell: dont overwrite for_window scratchpad geometry
this handle_commit causes containers in the scratchpad to have their `for_window` resize geometry get reset by natural geometry. A for_window ... resize directive's call to schedule ends up overwritten by this commit with natural geometry values.
-rw-r--r--sway/desktop/xdg_shell.c2
1 files changed, 1 insertions, 1 deletions
diff --git a/sway/desktop/xdg_shell.c b/sway/desktop/xdg_shell.c
index 7217e136..e730d009 100644
--- a/sway/desktop/xdg_shell.c
+++ b/sway/desktop/xdg_shell.c
@@ -321,7 +321,7 @@ static void handle_commit(struct wl_listener *listener, void *data) {
// containers, we resize the container to match. For tiling containers,
// we only recenter the surface.
memcpy(&view->geometry, new_geo, sizeof(struct wlr_box));
- if (container_is_floating(view->container)) {
+ if (container_is_floating(view->container) && !container_is_scratchpad_hidden(view->container)) {
view_update_size(view);
// Only set the toplevel size the current container actually has a size.
if (view->container->current.width) {