aboutsummaryrefslogtreecommitdiffstats
path: root/include
diff options
context:
space:
mode:
authorLibravatar Vlad Pănăzan <vlad@panazan.ro>2020-12-05 18:32:44 +0200
committerLibravatar Simon Ser <contact@emersion.fr>2020-12-07 12:30:13 +0100
commit71725a8eae6f8196d8e13a1b50af4f8ee4ebe971 (patch)
treece059eb969c1d9f6e5dc27f17ab944acf6c13042 /include
parentinput/cursor: unhide cursor on synthetic input (diff)
downloadsway-71725a8eae6f8196d8e13a1b50af4f8ee4ebe971.tar.gz
sway-71725a8eae6f8196d8e13a1b50af4f8ee4ebe971.tar.zst
sway-71725a8eae6f8196d8e13a1b50af4f8ee4ebe971.zip
Add layer shell subsurfaces
Damage subsurfaces created by layer surfaces on map, unmap and commit. This fixes the flicker of Gtk Popovers. Fixes #5617
Diffstat (limited to 'include')
-rw-r--r--include/sway/layers.h11
1 files changed, 11 insertions, 0 deletions
diff --git a/include/sway/layers.h b/include/sway/layers.h
index 025776f8..457634c2 100644
--- a/include/sway/layers.h
+++ b/include/sway/layers.h
@@ -20,6 +20,7 @@ struct sway_layer_surface {
20 struct wl_listener surface_commit; 20 struct wl_listener surface_commit;
21 struct wl_listener output_destroy; 21 struct wl_listener output_destroy;
22 struct wl_listener new_popup; 22 struct wl_listener new_popup;
23 struct wl_listener new_subsurface;
23 24
24 struct wlr_box geo; 25 struct wlr_box geo;
25 enum zwlr_layer_shell_v1_layer layer; 26 enum zwlr_layer_shell_v1_layer layer;
@@ -39,6 +40,16 @@ struct sway_layer_popup {
39 struct wl_listener new_popup; 40 struct wl_listener new_popup;
40}; 41};
41 42
43struct sway_layer_subsurface {
44 struct wlr_subsurface *wlr_subsurface;
45 struct sway_layer_surface *layer_surface;
46
47 struct wl_listener map;
48 struct wl_listener unmap;
49 struct wl_listener destroy;
50 struct wl_listener commit;
51};
52
42struct sway_output; 53struct sway_output;
43void arrange_layers(struct sway_output *output); 54void arrange_layers(struct sway_output *output);
44 55