From 1b85ba53b0a8b44bb4330d7c86cefcf5ff1e0ab1 Mon Sep 17 00:00:00 2001 From: Harry Jeffery Date: Sat, 9 Jan 2021 16:15:10 +0000 Subject: Wayland: Perform display roundtrip after changing scale Fixes #305 --- src/wl_window.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) (limited to 'src') diff --git a/src/wl_window.c b/src/wl_window.c index d79f1bb..e691d76 100644 --- a/src/wl_window.c +++ b/src/wl_window.c @@ -543,6 +543,7 @@ static void update_scale(struct imv_window *window) window->scale = new_scale; wl_surface_set_buffer_scale(window->wl_surface, window->scale); wl_surface_commit(window->wl_surface); + wl_display_roundtrip(window->wl_display); size_t buffer_width = window->width * window->scale; size_t buffer_height = window->height * window->scale; wl_egl_window_resize(window->egl_window, buffer_width, buffer_height, 0, 0); @@ -634,8 +635,8 @@ static void toplevel_configure(void *data, struct xdg_toplevel *toplevel, .resize = { .width = window->width, .height = window->height, - .buffer_width = window->width * window->scale, - .buffer_height = window->height * window->scale + .buffer_width = buffer_width, + .buffer_height = buffer_height, } } }; -- cgit v1.2.3