From c7366c3b3ad816d1ac5e46f8e2b71b35ac291d67 Mon Sep 17 00:00:00 2001 From: Kazumasa Mitsunari Date: Mon, 23 Jul 2018 20:19:47 +0900 Subject: [PATCH] Fix XDG application shrinks WM set surface source size output_size(1080X1920) in case of using runXDG. On the other hand, XDG application's source size is w = 0, h = 0 on startup from ivi-wm, so this patch fixes WM set XDG surface source size. This is short term solution because WM set source rectangle size every state changes. Bug-AGL: SPEC-1584 Change-Id: I128db0b7feaba6b51e13c467e91d5aff6adaf0a7 Signed-off-by: Kazumasa Mitsunari --- src/wayland_ivi_wm.cpp | 5 ----- src/window_manager.cpp | 2 ++ 2 files changed, 2 insertions(+), 5 deletions(-) diff --git a/src/wayland_ivi_wm.cpp b/src/wayland_ivi_wm.cpp index 75ecbbd..905031a 100644 --- a/src/wayland_ivi_wm.cpp +++ b/src/wayland_ivi_wm.cpp @@ -621,16 +621,11 @@ void controller::surface_created(uint32_t id) this->surfaces[id] = std::make_unique(id, this); this->chooks->surface_created(id); - // TODO: If Clipping is necessary, this process should be modified. { // Set surface type:IVI_WM_SURFACE_TYPE_DESKTOP) // for resizing wayland surface when switching from split to full surface. ivi_wm_set_surface_type(this->proxy.get(), id, IVI_WM_SURFACE_TYPE_DESKTOP); - // Set source reactangle even if we should not need to set it - // for enable setting for destination region. - this->surfaces[id]->set_source_rectangle(0, 0, this->output_size.w, this->output_size.h); - // Flush display this->display->flush(); } diff --git a/src/window_manager.cpp b/src/window_manager.cpp index 5b86af8..15f55f0 100644 --- a/src/window_manager.cpp +++ b/src/window_manager.cpp @@ -738,6 +738,8 @@ void WindowManager::surface_set_layout(int surface_id, const std::string& area) layer_id); // set destination to the display rectangle + s->set_source_rectangle(0, 0, w, h); + this->layout_commit(); s->set_destination_rectangle(x, y, w, h); // update area information -- 2.16.6