diff --git a/src/wayland/meta-wayland-window-configuration.c b/src/wayland/meta-wayland-window-configuration.c index 4298d1eec..56fa77ad6 100644 --- a/src/wayland/meta-wayland-window-configuration.c +++ b/src/wayland/meta-wayland-window-configuration.c @@ -100,14 +100,15 @@ meta_wayland_window_configuration_new_relative (MetaWindow *window, MetaWaylandWindowConfiguration * meta_wayland_window_configuration_new_empty (int bounds_width, - int bounds_height) + int bounds_height, + int scale) { MetaWaylandWindowConfiguration *configuration; configuration = g_new0 (MetaWaylandWindowConfiguration, 1); *configuration = (MetaWaylandWindowConfiguration) { .serial = ++global_serial_counter, - .scale = 1, + .scale = scale, .bounds_width = bounds_width, .bounds_height = bounds_height, }; diff --git a/src/wayland/meta-wayland-window-configuration.h b/src/wayland/meta-wayland-window-configuration.h index 064e73ea1..fb26344bb 100644 --- a/src/wayland/meta-wayland-window-configuration.h +++ b/src/wayland/meta-wayland-window-configuration.h @@ -68,6 +68,7 @@ MetaWaylandWindowConfiguration * meta_wayland_window_configuration_new_relative int scale); MetaWaylandWindowConfiguration * meta_wayland_window_configuration_new_empty (int bounds_width, - int bounds_height); + int bounds_height, + int scale); void meta_wayland_window_configuration_free (MetaWaylandWindowConfiguration *configuration); diff --git a/src/wayland/meta-wayland-xdg-shell.c b/src/wayland/meta-wayland-xdg-shell.c index 28b39577b..ff1b7a11a 100644 --- a/src/wayland/meta-wayland-xdg-shell.c +++ b/src/wayland/meta-wayland-xdg-shell.c @@ -869,6 +869,9 @@ meta_wayland_xdg_toplevel_apply_state (MetaWaylandSurfaceRole *surface_role, MetaWaylandWindowConfiguration *configuration; int bounds_width; int bounds_height; + int geometry_scale; + + geometry_scale = meta_window_wayland_get_geometry_scale (window); if (!meta_window_calculate_bounds (window, &bounds_width, &bounds_height)) { @@ -878,7 +881,8 @@ meta_wayland_xdg_toplevel_apply_state (MetaWaylandSurfaceRole *surface_role, configuration = meta_wayland_window_configuration_new_empty (bounds_width, - bounds_height); + bounds_height, + geometry_scale); meta_wayland_xdg_toplevel_send_configure (xdg_toplevel, configuration); meta_wayland_window_configuration_free (configuration); return;