summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2015-11-17 18:21:11 -0500
committerChris Michael <cp.michael@samsung.com>2015-12-03 11:36:56 -0500
commit240f817ba52bb9284311e9c794d1a32951bf5c7e (patch)
tree2935583a018b4529fa78ac3720987bcb562b1751
parent9e9b5d6b31b4dffabf32ec24374afc64c1f8c91b (diff)
ecore-evas wayland: enforce frame/state change triggering before move/resize
if a state change occurs on the ee, related callbacks must be run prior to performing any resizes in order to ensure that the correct csd sizes are calculated @fix ref T2841
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c19
1 files changed, 3 insertions, 16 deletions
diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
index 14b583b531..a7500f28e1 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c
@@ -191,22 +191,6 @@ _ecore_evas_wl_common_cb_window_configure(void *data EINA_UNUSED, int type EINA_
191 if (nw < 1) nw = 1; 191 if (nw < 1) nw = 1;
192 if (nh < 1) nh = 1; 192 if (nh < 1) nh = 1;
193 193
194 /* NB: We receive window configure sizes based on xdg surface
195 * window geometry, so we need to subtract framespace here */
196
197 evas_output_framespace_get(ee->evas, NULL, NULL, &fw, &fh);
198
199 if (ECORE_EVAS_PORTRAIT(ee))
200 {
201 nw -= fw;
202 nh -= fh;
203 }
204 else
205 {
206 nw -= fh;
207 nh -= fw;
208 }
209
210 if (prev_full != ee->prop.fullscreen) 194 if (prev_full != ee->prop.fullscreen)
211 _ecore_evas_wl_common_border_update(ee); 195 _ecore_evas_wl_common_border_update(ee);
212 196
@@ -214,7 +198,10 @@ _ecore_evas_wl_common_cb_window_configure(void *data EINA_UNUSED, int type EINA_
214 (prev_full != ee->prop.fullscreen)) 198 (prev_full != ee->prop.fullscreen))
215 _ecore_evas_wl_common_state_update(ee); 199 _ecore_evas_wl_common_state_update(ee);
216 200
201 /* NB: We receive window configure sizes based on xdg surface
202 * window geometry, so we need to subtract framespace here */
217 evas_output_framespace_get(ee->evas, NULL, NULL, &fw, &fh); 203 evas_output_framespace_get(ee->evas, NULL, NULL, &fw, &fh);
204
218 if (ECORE_EVAS_PORTRAIT(ee)) 205 if (ECORE_EVAS_PORTRAIT(ee))
219 { 206 {
220 nw -= fw; 207 nw -= fw;