devilhorns pushed a commit to branch master.

http://git.enlightenment.org/core/efl.git/commit/?id=210c6b9b7cb0d938a3734e635edfdfc4de472003

commit 210c6b9b7cb0d938a3734e635edfdfc4de472003
Author: Chris Michael <cp.mich...@samsung.com>
Date:   Thu Oct 8 16:04:50 2015 -0400

    ecore-evas-wayland: Set ee->draw_ok appropriately based on visibility
    
    Summary: A previous code change to the common code which processes
    updates is relying on having the ecore_evas->draw_ok flag set in order
    to process updates. This change makes sure that ee->draw_ok is in sync
    with canvas visibility.
    
    @fix
    
    Signed-off-by: Chris Michael <cp.mich...@samsung.com>
---
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c | 3 +++
 src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c | 3 +++
 2 files changed, 6 insertions(+)

diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
index 2414e2f..1ba7542 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_egl.c
@@ -362,6 +362,8 @@ _ecore_evas_wl_show(Ecore_Evas *ee)
 
    if (ee->visible) return;
    ee->visible = 1;
+   ee->should_be_visible = 1;
+   ee->draw_ok = EINA_TRUE;
    if (ee->func.fn_show) ee->func.fn_show(ee);
 }
 
@@ -397,6 +399,7 @@ _ecore_evas_wl_hide(Ecore_Evas *ee)
    if (!ee->visible) return;
    ee->visible = 0;
    ee->should_be_visible = 0;
+   ee->draw_ok = EINA_FALSE;
 
    if (ee->func.fn_hide) ee->func.fn_hide(ee);
 }
diff --git a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c 
b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
index d9b2894..bf3f5fb 100644
--- a/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
+++ b/src/modules/ecore_evas/engines/wayland/ecore_evas_wayland_shm.c
@@ -357,6 +357,8 @@ _ecore_evas_wl_show(Ecore_Evas *ee)
 
    if (ee->visible) return;
    ee->visible = 1;
+   ee->should_be_visible = 1;
+   ee->draw_ok = EINA_TRUE;
    if (ee->func.fn_show) ee->func.fn_show(ee);
 }
 
@@ -392,6 +394,7 @@ _ecore_evas_wl_hide(Ecore_Evas *ee)
    if (!ee->visible) return;
    ee->visible = 0;
    ee->should_be_visible = 0;
+   ee->draw_ok = EINA_FALSE;
 
    if (ee->func.fn_hide) ee->func.fn_hide(ee);
 }

-- 


Reply via email to