wayland: Scale up wl_egl_window according to window scale

In order to support window scales for EGL windows, resize the
wl_egl_window to the window dimension multiplied with the window scale,
just as with SHM window buffers.

https://bugzilla.gnome.org/show_bug.cgi?id=745076
This commit is contained in:
Jonas Ådahl 2015-02-24 17:20:22 +08:00 committed by Matthias Clasen
parent 56c9eac16e
commit aa81262f11

View File

@ -181,7 +181,13 @@ gdk_wayland_window_update_size (GdkWindow *window,
impl->scale = scale;
if (impl->egl_window)
wl_egl_window_resize (impl->egl_window, width, height, 0, 0);
{
wl_egl_window_resize (impl->egl_window,
width * scale,
height * scale,
0, 0);
wl_surface_set_buffer_scale (impl->surface, scale);
}
area.x = 0;
area.y = 0;
@ -2262,8 +2268,9 @@ gdk_wayland_window_get_wl_egl_window (GdkWindow *window)
{
impl->egl_window =
wl_egl_window_create(impl->surface,
impl->wrapper->width,
impl->wrapper->height);
impl->wrapper->width * impl->scale,
impl->wrapper->height * impl->scale);
wl_surface_set_buffer_scale (impl->surface, impl->scale);
}
return impl->egl_window;