ecore-evas-wl: Fix issue of resize jumping

Summary: When an initial client application was shown and we tried to
resize it, the resize would jump by the amount of framespace. This was
because the xdg_surface@configure event would be sending window
geometry as the width/height params in the event. We need to account
for that in the callback of window configure and adjust size
accordingly.

@fix

Signed-off-by: Chris Michael <cp.michael@samsung.com>
This commit is contained in:
Chris Michael 2015-11-09 11:55:21 -05:00
parent 85381ee839
commit 9e9b5d6b31
1 changed files with 16 additions and 0 deletions

View File

@ -191,6 +191,22 @@ _ecore_evas_wl_common_cb_window_configure(void *data EINA_UNUSED, int type EINA_
if (nw < 1) nw = 1;
if (nh < 1) nh = 1;
/* NB: We receive window configure sizes based on xdg surface
* window geometry, so we need to subtract framespace here */
evas_output_framespace_get(ee->evas, NULL, NULL, &fw, &fh);
if (ECORE_EVAS_PORTRAIT(ee))
{
nw -= fw;
nh -= fh;
}
else
{
nw -= fh;
nh -= fw;
}
if (prev_full != ee->prop.fullscreen)
_ecore_evas_wl_common_border_update(ee);