e_comp: Add event COMPOSITOR_ENABLE when hwc ended 72/93372/4
authorJuyeon Lee <juyeonne.lee@samsung.com>
Mon, 24 Oct 2016 02:30:14 +0000 (11:30 +0900)
committerGwanglim Lee <gl77.lee@samsung.com>
Wed, 2 Nov 2016 02:37:15 +0000 (19:37 -0700)
Compositor disabled when fb target layer is assigned by a client surface
once fb target is occupied, hwc mode is fully hwc mode.
if hwc mode is ended and need composite again, than assign null on plane with
the E_EVENT_COMPOSITOR_ENABLE

Change-Id: I5d8d941767560b9d497adaa5884ed7ff831c5f1a
Signed-off-by: Juyeon Lee <juyeonne.lee@samsung.com>
src/bin/e_comp.c

index 57b24867bc78699f8a1fe30e960699377580221a..dea9f98f9a9a07eac68e685d953f071c2035d3c1 100644 (file)
@@ -672,6 +672,7 @@ e_comp_hwc_end(const char *location)
    Eina_Bool mode_set = EINA_FALSE;
    E_Zone *zone;
    Eina_List *l;
+   Eina_Bool fully_hwc = (e_comp->hwc_mode == E_HWC_MODE_FULL) ? EINA_TRUE : EINA_FALSE;
 
    e_comp->nocomp_want = 0;
    E_FREE_FUNC(e_comp->nocomp_delay_timer, ecore_timer_del);
@@ -692,7 +693,9 @@ e_comp_hwc_end(const char *location)
 
    e_comp->hwc_mode = E_HWC_MODE_NO;
 
-   ecore_event_add(E_EVENT_COMPOSITOR_ENABLE, NULL, NULL, NULL);
+   if (fully_hwc)
+     ecore_event_add(E_EVENT_COMPOSITOR_ENABLE, NULL, NULL, NULL);
+
    INF("HWC : End...  at %s", location);
 }
 #endif  // end of ENABLE_HWC_MULTI