summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorMike Blumenkrantz <zmike@osg.samsung.com>2017-03-10 16:11:19 -0500
committerMike Blumenkrantz <zmike@osg.samsung.com>2017-03-10 16:11:19 -0500
commit9d8bc92c4a3e1e8452935ed9f54f3b8c09789e7b (patch)
tree25bc0cead97cfb1b7165bd042377f43397ae55d6
parenta73a18b01de7ca5944330b563748f3162c22d60a (diff)
downloadefl-9d8bc92c4a3e1e8452935ed9f54f3b8c09789e7b.tar.gz
ecore-evas-wayland: update no-op configure commit case for new acking method
ref 1b9970658f17d6b130a24cf9a960e1a43b696160 ref 5e7456a3150ddaed135f702c70800c7ed3d4f16f
-rw-r--r--src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c15
1 files changed, 12 insertions, 3 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 5c4b04389b..ba14b17f3c 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
@@ -316,9 +316,18 @@ _ecore_evas_wl_common_cb_window_configure(void *data EINA_UNUSED, int type EINA_
if ((!nw) && (!nh))
{
- /* this assumes ecore-wl2 continues to immediately ack every configure */
- if (wdata->win->surface && ((!state_change) || ((pfw == fw) && (pfh == fh))))
- wl_surface_commit(wdata->win->surface);
+ if (wdata->win->configure_serial && wdata->win->surface &&
+ ((!state_change) || ((pfw == fw) && (pfh == fh))))
+ {
+ if (wdata->win->zxdg_configure_ack)
+ wdata->win->zxdg_configure_ack(wdata->win->zxdg_surface,
+ wdata->win->configure_serial);
+ else if (wdata->win->configure_ack)
+ wdata->win->configure_ack(wdata->win->xdg_surface,
+ wdata->win->configure_serial);
+ wdata->win->configure_serial = 0;
+ wl_surface_commit(wdata->win->surface);
+ }
return ECORE_CALLBACK_RENEW;
}