about summary refs log tree commit diff
path: root/drw.c
diff options
context:
space:
mode:
authorArenM <aren@peacevolution.org>2022-07-05 12:54:33 -0400
committerZach DeCook <zachdecook@librem.one>2022-07-11 00:59:10 -0400
commit6566a7f57d695d888650d43225844f9641414919 (patch)
treebd41dae2b3add5810e7b2dbf146667a5e402f0d9 /drw.c
parent1c4df6ae2b9c94feb6b65e616520275b645bfa5c (diff)
downloadsuggpicker-6566a7f57d695d888650d43225844f9641414919.tar.gz
only commit surface when it changed
This is based off of a commit in wvkbd

Previously wvkbd (and suggpicker) would commit a (usually unchanged) surface at the framerate of the compositor,
this only commits the buffer when we render something new.
Diffstat (limited to 'drw.c')
-rw-r--r--drw.c18
1 files changed, 0 insertions, 18 deletions
diff --git a/drw.c b/drw.c
index a7cfd20..6ea904e 100644
--- a/drw.c
+++ b/drw.c
@@ -20,31 +20,13 @@ drwsurf_resize(struct drwsurf *ds, uint32_t w, uint32_t h, uint32_t s) {
 	setup_buffer(ds);
 }
 
-static void surface_frame_callback(void *data, struct wl_callback *cb,
-                                   uint32_t time);
-
-static struct wl_callback_listener frame_listener = {.done =
-                                                       surface_frame_callback};
-
 void
 drwsurf_flip(struct drwsurf *ds) {
-	ds->cb = wl_surface_frame(ds->surf);
-	wl_callback_add_listener(ds->cb, &frame_listener, (void *)ds);
-
 	wl_surface_attach(ds->surf, ds->buf, 0, 0);
 	wl_surface_commit(ds->surf);
 }
 
 void
-surface_frame_callback(void *data, struct wl_callback *cb, uint32_t time) {
-	struct drwsurf *ds = (struct drwsurf *)data;
-	wl_callback_destroy(cb);
-	ds->cb = NULL;
-
-	drwsurf_flip(ds);
-}
-
-void
 drw_draw_text(struct drwsurf *d, Color color, uint32_t x, uint32_t y,
               uint32_t w, uint32_t h, const char *label) {