This commit is contained in:
Kenny Levinsen 2025-08-14 16:53:03 +00:00 committed by GitHub
commit 13ea679387
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
5 changed files with 206 additions and 1 deletions

View file

@ -7,6 +7,7 @@ struct sway_container;
struct sway_node;
void arrange_container(struct sway_container *container);
void next_sibling_container_geometry(struct sway_container *child, struct sway_container *sibling, bool fullscreen);
void arrange_workspace(struct sway_workspace *workspace);

View file

@ -314,6 +314,21 @@ void view_begin_destroy(struct sway_view *view);
void view_map(struct sway_view *view, struct wlr_surface *wlr_surface,
bool fullscreen, struct wlr_output *fullscreen_output, bool decoration);
/**
* Prepare the view for its upcoming mapping, sending the intended dimensions
* so that the first frame has a chance of being correct. If CSD preferences or
* floating tendency changes, this may turn out to be inaccurate but no worse
* than skipping the step.
*
* `fullscreen` should be set to true (and optionally `fullscreen_output`
* should be populated) if the view should be made fullscreen immediately.
*
* `decoration` should be set to true if the client prefers CSD. The client's
* preference may be ignored.
*/
void view_premap(struct sway_view *view, struct wlr_surface *wlr_surface,
bool fullscreen, struct wlr_output *fullscreen_output, bool decoration);
void view_unmap(struct sway_view *view);
void view_update_size(struct sway_view *view);