Add layer shell subsurfaces

Damage subsurfaces created by layer surfaces on map, unmap and
commit. This fixes the flicker of Gtk Popovers.

Fixes #5617
This commit is contained in:
Vlad Pănăzan 2020-12-05 18:32:44 +02:00 committed by Simon Ser
parent cc2c0d5966
commit 71725a8eae
2 changed files with 91 additions and 0 deletions

View file

@ -20,6 +20,7 @@ struct sway_layer_surface {
struct wl_listener surface_commit;
struct wl_listener output_destroy;
struct wl_listener new_popup;
struct wl_listener new_subsurface;
struct wlr_box geo;
enum zwlr_layer_shell_v1_layer layer;
@ -39,6 +40,16 @@ struct sway_layer_popup {
struct wl_listener new_popup;
};
struct sway_layer_subsurface {
struct wlr_subsurface *wlr_subsurface;
struct sway_layer_surface *layer_surface;
struct wl_listener map;
struct wl_listener unmap;
struct wl_listener destroy;
struct wl_listener commit;
};
struct sway_output;
void arrange_layers(struct sway_output *output);