e_service_quickpanel: get the current desk of the zone 26/298226/1
authorSooChan Lim <sc1.lim@samsung.com>
Thu, 24 Aug 2023 07:37:35 +0000 (16:37 +0900)
committerTizen Window System <tizen.windowsystem@gmail.com>
Mon, 4 Sep 2023 02:36:42 +0000 (11:36 +0900)
Use the current desk at the zone

Change-Id: I51f813f267b636cbdb089cd2128a83c5782d2ff2

src/bin/services/e_service_quickpanel.c

index 98dc8c7..8c7f9c2 100644 (file)
@@ -241,13 +241,15 @@ _mover_intercept_show(void *data, Evas_Object *obj)
 {
    Mover_Data *md;
    E_Client *ec;
+   E_Desk *desk;
    Evas *e;
    E_Map *map;
    E_Map *map2;
    Evas_Object *effect_obj;
+   E_Policy_Quickpanel *qp;
 
    md = data;
-
+   qp = md->qp;
    ec = md->ec;
 
    /* force update */
@@ -261,7 +263,10 @@ _mover_intercept_show(void *data, Evas_Object *obj)
    // because mover (also smart obj) is a member of e_desk
    // otherwize, desk-zoom will mutiplied on a ec again.
    if (e_config->qp_add_on_desk_smart)
-     e_desk_client_del(ec->desk, ec);
+     {
+        desk = e_desk_current_get(qp->zone);
+        e_desk_client_del(desk, ec);
+     }
 
    e_layout_pack(md->qp_layout_obj, ec->frame);
 
@@ -308,7 +313,10 @@ _mover_intercept_show(void *data, Evas_Object *obj)
    evas_object_show(obj);
 
    if (e_config->qp_add_on_desk_smart)
-     e_desk_smart_member_add(ec->desk, obj);
+     {
+        desk = e_desk_current_get(qp->zone);
+        e_desk_smart_member_add(desk, obj);
+     }
 }
 
 static void
@@ -335,9 +343,12 @@ static void
 _mover_smart_del(Evas_Object *obj)
 {
    E_Client *ec;
+   E_Desk *desk;
+   E_Policy_Quickpanel *qp;
 
    INTERNAL_ENTRY;
 
+   qp = md->qp;
    ec = md->ec;
    if (md->base_clip)
      {
@@ -374,7 +385,10 @@ _mover_smart_del(Evas_Object *obj)
    e_layout_unpack(ec->frame);
 
    if (e_config->qp_add_on_desk_smart)
-     e_desk_smart_member_add(ec->desk, ec->frame);
+     {
+        desk = e_desk_current_get(qp->zone);
+        e_desk_smart_member_add(desk, ec->frame);
+     }
 
    free(md);
 }
@@ -2049,6 +2063,7 @@ static Evas_Object *
 _quickpanel_indicator_object_new(E_Policy_Quickpanel *qp)
 {
    Evas_Object *indi_obj;
+   E_Desk *desk;
 
    indi_obj = e_service_region_object_new(qp->ec);
    evas_object_name_set(indi_obj, "qp::indicator_obj");
@@ -2069,7 +2084,10 @@ _quickpanel_indicator_object_new(E_Policy_Quickpanel *qp)
    evas_object_show(indi_obj);
 
    if (e_config->qp_add_on_desk_smart)
-     e_desk_smart_member_add(qp->ec->desk, indi_obj);
+     {
+        desk = e_desk_current_get(qp->zone);
+        e_desk_smart_member_add(desk, indi_obj);
+     }
 
    return indi_obj;
 }