aboutsummaryrefslogtreecommitdiff
path: root/dwl.c
diff options
context:
space:
mode:
authorDevin J. Pohly <djpohly@gmail.com>2022-02-15 14:03:04 -0600
committerGitHub <noreply@github.com>2022-02-15 14:03:04 -0600
commit22a6f6661aedd2d36ee7bb3f0de37c92677c9f9a (patch)
tree337a2644a4b6d88734335de4f0e1ccc606742924 /dwl.c
parent2315462f9695e9b71ef2a980a1dbd3ce9f4ba702 (diff)
parentdf332de9d22f0680a362cd9408a96df58a1d04bc (diff)
Merge pull request #151 from Sevz17/scenegraph3
send frame_done also to all layer surfaces
Diffstat (limited to 'dwl.c')
-rw-r--r--dwl.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/dwl.c b/dwl.c
index 58a1bd9..d3c93dd 100644
--- a/dwl.c
+++ b/dwl.c
@@ -1603,7 +1603,8 @@ rendermon(struct wl_listener *listener, void *data)
* generally at the output's refresh rate (e.g. 60Hz). */
Monitor *m = wl_container_of(listener, m, frame);
Client *c;
- int skip = 0;
+ LayerSurface *layer;
+ int i, skip = 0;
struct timespec now;
/* Render if no XDG clients have an outstanding resize. */
@@ -1617,6 +1618,11 @@ rendermon(struct wl_listener *listener, void *data)
wl_list_for_each(c, &clients, link)
if (VISIBLEON(c, c->mon))
client_for_each_surface(c, rendered, &now);
+
+ for (i = 0; i < LENGTH(m->layers); i++)
+ wl_list_for_each(layer, &m->layers[i], link)
+ wlr_layer_surface_v1_for_each_surface(layer->layer_surface, rendered, &now);
+
}
void