From f458840deb1e616c9877a99759cd3441a9b9f28a Mon Sep 17 00:00:00 2001 From: SooChan Lim Date: Mon, 27 Nov 2017 19:15:36 +0900 Subject: [PATCH] e_comp_hwc: cancel hwc below quickpanel windows when open if e_config->use_desk_smart_obj is 1, e_desk smart obj became a child of canvas. and the smart obj has quickpanel as a member of it so, quickpanel window couldn't be a child of canvas, but e_desk Change-Id: I8fde7e9656da9279738906120705c136c7a00cd8 --- src/bin/e_output_hwc.c | 10 +++++++++- 1 file changed, 9 insertions(+), 1 deletion(-) diff --git a/src/bin/e_output_hwc.c b/src/bin/e_output_hwc.c index 5c9e9ee..8bdfbaf 100644 --- a/src/bin/e_output_hwc.c +++ b/src/bin/e_output_hwc.c @@ -1,4 +1,5 @@ #include "e.h" +#include "services/e_service_quickpanel.h" static Eina_Bool _e_output_hwc_ec_check(E_Client *ec) @@ -389,9 +390,16 @@ _e_output_hwc_planes_prepare(E_Output_Hwc *output_hwc, E_Zone *zone) vis_clist = e_comp_vis_ec_list_get(zone); if (!vis_clist) return EINA_FALSE; + // check clients not able to use hwc EINA_LIST_FOREACH(vis_clist, vl, ec) { - // check clients not able to use hwc + // if there is a ec which is lower than quickpanel and quickpanel is opened. + if (E_POLICY_QUICKPANEL_LAYER >= evas_object_layer_get(ec->frame)) + { + // check whether quickpanel is open than break + if (e_qp_visible_get()) goto done; + } + // if ec->frame is not for client buffer (e.g. launchscreen) if (e_comp_object_content_type_get(ec->frame) != E_COMP_OBJECT_CONTENT_TYPE_INT_IMAGE) goto done; -- 2.7.4