devilhorns pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=3a8cfeb6d6feb077c30d2d8eea74babf16616613

commit 3a8cfeb6d6feb077c30d2d8eea74babf16616613
Author: Chris Michael <cpmich...@osg.samsung.com>
Date:   Fri Dec 4 14:15:19 2015 -0500

    ecore-evas-wayland: Acknowledge configure event post render
    
    This fixes a potential issue where we may have been sending the
    configure acknowledgement before applying the actual new configuration
    to the surface. Sending the ack_configure during post-render ensures
    that we have already rendered according to the new configure
    (addresses deferred rendering issue).
    
    @fix
    
    Signed-off-by: Chris Michael <cpmich...@osg.samsung.com>
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_common.c | 7 +++++++
 .../ecore_evas/engines/wayland/ecore_evas_wayland_private.h        | 1 +
 2 files changed, 8 insertions(+)

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 a7500f2..0a36eec 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
@@ -1351,8 +1351,15 @@ _ecore_evas_wl_common_render_updates(void *data, Evas 
*evas EINA_UNUSED, void *e
 void
 _ecore_evas_wl_common_post_render(Ecore_Evas *ee)
 {
+   Ecore_Evas_Engine_Wl_Data *wdata;
+
    LOGFN(__FILE__, __LINE__, __FUNCTION__);
 
+   wdata = ee->engine.data;
+   if (wdata->win->configure_ack)
+     wdata->win->configure_ack(wdata->win->xdg_surface,
+                               wdata->win->configure_serial);
+
    _ecore_evas_idle_timeout_update(ee);
    if (ee->func.fn_post_render) ee->func.fn_post_render(ee);
 }
diff --git 
a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_private.h 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_private.h
index f627d29..2551c0f 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_private.h
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_private.h
@@ -21,6 +21,7 @@
 #include <Ecore_Input_Evas.h>
 #include <Ecore_Wayland.h>
 #include <Ecore_Wl2.h>
+#include "ecore_wl2_private.h"
 
 #include <Ecore_Evas.h>
 #include "ecore_evas_private.h"

-- 


Reply via email to