aboutsummaryrefslogtreecommitdiffstats
path: root/sway/desktop/desktop.c
diff options
context:
space:
mode:
authorLibravatar Ryan Dwyer <ryandwyer1@gmail.com>2018-08-18 15:10:06 +1000
committerLibravatar Ryan Dwyer <ryandwyer1@gmail.com>2018-08-18 15:10:06 +1000
commitb0a5f3a25f52bc1d48d771cb02820042006d8d9e (patch)
treee7a2e4c60e562589e3b9a54c6ce559a41dcf7534 /sway/desktop/desktop.c
parentSet current size when a floating xwayland view resizes (diff)
downloadsway-b0a5f3a25f52bc1d48d771cb02820042006d8d9e.tar.gz
sway-b0a5f3a25f52bc1d48d771cb02820042006d8d9e.tar.zst
sway-b0a5f3a25f52bc1d48d771cb02820042006d8d9e.zip
Store geometry in the view and handle any floating view resizing
Diffstat (limited to 'sway/desktop/desktop.c')
-rw-r--r--sway/desktop/desktop.c18
1 files changed, 18 insertions, 0 deletions
diff --git a/sway/desktop/desktop.c b/sway/desktop/desktop.c
index 6575519d..72650397 100644
--- a/sway/desktop/desktop.c
+++ b/sway/desktop/desktop.c
@@ -22,3 +22,21 @@ void desktop_damage_whole_container(struct sway_container *con) {
22 } 22 }
23 } 23 }
24} 24}
25
26void desktop_damage_box(struct wlr_box *box) {
27 for (int i = 0; i < root_container.children->length; ++i) {
28 struct sway_container *cont = root_container.children->items[i];
29 output_damage_box(cont->sway_output, box);
30 }
31}
32
33void desktop_damage_view(struct sway_view *view) {
34 desktop_damage_whole_container(view->swayc);
35 struct wlr_box box = {
36 .x = view->swayc->current.view_x - view->geometry.x,
37 .y = view->swayc->current.view_y - view->geometry.y,
38 .width = view->surface->current.width,
39 .height = view->surface->current.height,
40 };
41 desktop_damage_box(&box);
42}