Remaximize after fullscreen move

This commit is contained in:
Carl Philipp Klemm 2025-08-01 18:20:44 +02:00
parent b966a1ed73
commit f57e8a4e91
3 changed files with 10 additions and 0 deletions

View file

@ -222,6 +222,7 @@ struct view {
enum ssd_preference ssd_preference; enum ssd_preference ssd_preference;
bool shaded; bool shaded;
bool minimized; bool minimized;
bool remaximize;
enum view_axis maximized; enum view_axis maximized;
bool fullscreen; bool fullscreen;
bool tearing_hint; bool tearing_hint;

View file

@ -295,6 +295,8 @@ process_cursor_move(struct server *server, uint32_t time)
}; };
interactive_anchor_to_cursor(server, &new_geo); interactive_anchor_to_cursor(server, &new_geo);
/* Shaded clients will not process resize events until unshaded */ /* Shaded clients will not process resize events until unshaded */
if (view->maximized == VIEW_AXIS_BOTH)
view->remaximize = true;
view_set_shade(view, false); view_set_shade(view, false);
view_set_untiled(view); view_set_untiled(view);
view_restore_to(view, new_geo); view_restore_to(view, new_geo);

View file

@ -152,6 +152,8 @@ interactive_begin(struct view *view, enum input_mode mode, uint32_t edges)
interactive_anchor_to_cursor(server, &natural_geo); interactive_anchor_to_cursor(server, &natural_geo);
/* Shaded clients will not process resize events until unshaded */ /* Shaded clients will not process resize events until unshaded */
view_set_shade(view, false); view_set_shade(view, false);
if (view->maximized == VIEW_AXIS_BOTH)
view->remaximize = true;
view_set_untiled(view); view_set_untiled(view);
view_restore_to(view, natural_geo); view_restore_to(view, natural_geo);
} }
@ -265,6 +267,11 @@ interactive_finish(struct view *view)
} }
} }
if (view->remaximize) {
view_maximize(view, VIEW_AXIS_BOTH, true);
view->remaximize = false;
}
interactive_cancel(view); interactive_cancel(view);
} }