diff options
| author | Federico Angelilli <code@fedang.net> | 2024-03-17 17:01:16 +0100 |
|---|---|---|
| committer | Federico Angelilli <code@fedang.net> | 2024-03-17 17:01:16 +0100 |
| commit | e0c591cd6a3ac5af82c41460149f1ae6be8e3819 (patch) | |
| tree | 5f7a9117d02be7e4d737d2682aa98861b95fef4e /src/window.c | |
| parent | ed1c374aaa32ebe1cbcc682dc26232d46d33eb50 (diff) | |
Flush cairo surface
Diffstat (limited to 'src/window.c')
| -rw-r--r-- | src/window.c | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/window.c b/src/window.c index 87779ea..cc9c9fc 100644 --- a/src/window.c +++ b/src/window.c @@ -281,10 +281,15 @@ void window_paint_surface(Window *win, cairo_surface_t *surface, int width, int cairo_xcb_surface_set_size(win->surface, width, height); xcb_clear_area(win->con->connection, false, win->window, 0, 0, 0, 0); + cairo_save(win->cr); cairo_set_source_surface(win->cr, surface, 0, 0); + cairo_paint(win->cr); cairo_show_page(win->cr); + cairo_surface_flush(win->surface); + cairo_restore(win->cr); + xcb_circulate_window(win->con->connection, XCB_CIRCULATE_RAISE_LOWEST, win->window); xcb_flush(win->con->connection); } |
