xwayland: Reuse viewport instead of recreating
When a viewport is already created we can reuse this object instead of destroying it and getting a new one for updating the source rectangle and destination size. Signed-off-by: Roman Gilg <subdiff@gmail.com> Reviewed-by: Hans de Goede <hdegoede@redhat.com> Acked-by: Olivier Fourdan <ofourdan@redhat.com> Signed-off-by: Hans de Goede <hdegoede@redhat.com>
This commit is contained in:
parent
ded89300c1
commit
948e02872f
|
@ -217,17 +217,13 @@ xwl_window_enable_viewport(struct xwl_window *xwl_window,
|
||||||
struct xwl_output *xwl_output,
|
struct xwl_output *xwl_output,
|
||||||
struct xwl_emulated_mode *emulated_mode)
|
struct xwl_emulated_mode *emulated_mode)
|
||||||
{
|
{
|
||||||
/* If necessary disable old viewport to apply new settings */
|
if (!xwl_window_has_viewport_enabled(xwl_window)) {
|
||||||
if (xwl_window_has_viewport_enabled(xwl_window))
|
DebugF("XWAYLAND: enabling viewport %dx%d -> %dx%d\n",
|
||||||
xwl_window_disable_viewport(xwl_window);
|
emulated_mode->width, emulated_mode->height,
|
||||||
|
xwl_output->width, xwl_output->height);
|
||||||
DebugF("XWAYLAND: enabling viewport %dx%d -> %dx%d\n",
|
xwl_window->viewport = wp_viewporter_get_viewport(xwl_window->xwl_screen->viewporter,
|
||||||
emulated_mode->width, emulated_mode->height,
|
xwl_window->surface);
|
||||||
xwl_output->width, xwl_output->height);
|
}
|
||||||
|
|
||||||
xwl_window->viewport =
|
|
||||||
wp_viewporter_get_viewport(xwl_window->xwl_screen->viewporter,
|
|
||||||
xwl_window->surface);
|
|
||||||
|
|
||||||
wp_viewport_set_source(xwl_window->viewport,
|
wp_viewport_set_source(xwl_window->viewport,
|
||||||
wl_fixed_from_int(0),
|
wl_fixed_from_int(0),
|
||||||
|
|
Loading…
Reference in New Issue