efl_ui_popup: remove parent_window_get method
authorJinYong Park <j4939.park@samsung.com>
Tue, 24 Oct 2017 11:13:21 +0000 (20:13 +0900)
committerJaehyun Cho <jae_hyun.cho@samsung.com>
Tue, 28 Nov 2017 08:15:42 +0000 (17:15 +0900)
Summary: remove Efl.Ui.Popup's internal method "parent_window_get"

Test Plan: elementary_test -to efluipopup

Reviewers: jpeg, Jaehyun_Cho, woohyun, herb

Reviewed By: Jaehyun_Cho

Subscribers: cedric

Differential Revision: https://phab.enlightenment.org/D5363

src/lib/elementary/efl_ui_popup.c
src/lib/elementary/efl_ui_popup.eo
src/lib/elementary/efl_ui_popup_anchor.c

index 3441054..dc23b28 100644 (file)
@@ -112,12 +112,6 @@ _efl_ui_popup_efl_container_content_unset(Eo *obj, Efl_Ui_Popup_Data *pd EINA_UN
    return efl_content_unset(efl_part(obj, "elm.swallow.content"));
 }
 
-EOLIAN static Efl_Canvas_Object *
-_efl_ui_popup_parent_window_get(Eo *obj EINA_UNUSED, Efl_Ui_Popup_Data *pd)
-{
-   return pd->win_parent;
-}
-
 EOLIAN static void
 _efl_ui_popup_align_set(Eo *obj EINA_UNUSED, Efl_Ui_Popup_Data *pd, Efl_Ui_Popup_Align type)
 {
index 06aefd0..7af22ae 100644 (file)
@@ -10,14 +10,6 @@ enum Efl.Ui.Popup.Align {
 class Efl.Ui.Popup(Efl.Ui.Layout)
 {
    methods {
-       @property parent_window @protected {
-         get {
-            [[Get the parent window of Popup.]]
-         }
-         values {
-            window: Efl.Canvas.Object;
-         }
-      }
       bg_set {
          params {
             @in file: string; [[The image file path.]]
index 8ec41bc..20ff3d8 100644 (file)
@@ -24,7 +24,12 @@ _anchor_calc(Evas_Object *obj)
    Evas_Coord_Size parent_size = {0, 0};
    Eina_Position2D pos = {0, 0};
 
-   Evas_Object *parent = efl_ui_popup_parent_window_get(obj);
+   Evas_Object *parent = efl_provider_find(obj, EFL_UI_WIN_CLASS);
+   if (!parent)
+     {
+        ERR("Cannot find window parent");
+        return;
+     }
 
    evas_object_geometry_get(sd->anchor, &anchor_geom.x, &anchor_geom.y, &anchor_geom.w, &anchor_geom.h);
    evas_object_geometry_get(obj, NULL, NULL, &popup_size.w, &popup_size.h);
@@ -209,7 +214,14 @@ _anchor_del_cb(void *data, const Efl_Event *ev EINA_UNUSED)
 {
    EFL_UI_POPUP_ANCHOR_DATA_GET(data, sd);
 
-   efl_event_callback_del(efl_ui_popup_parent_window_get(data), EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, data);
+   Evas_Object *parent = efl_provider_find(data, EFL_UI_WIN_CLASS);
+   if (!parent)
+     {
+        ERR("Cannot find window parent");
+        return;
+     }
+
+   efl_event_callback_del(parent, EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, data);
 
    sd->anchor = NULL;
    efl_ui_popup_align_set(efl_super(data, MY_CLASS), sd->align);
@@ -222,7 +234,14 @@ _anchor_detach(Evas_Object *obj)
 
    if (sd->anchor == NULL) return;
 
-   efl_event_callback_del(efl_ui_popup_parent_window_get(obj), EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, obj);
+   Evas_Object *parent = efl_provider_find(obj, EFL_UI_WIN_CLASS);
+   if (!parent)
+     {
+        ERR("Cannot find window parent");
+        return;
+     }
+
+   efl_event_callback_del(parent, EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, obj);
    efl_event_callback_del(sd->anchor, EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, obj);
    efl_event_callback_del(sd->anchor, EFL_GFX_EVENT_MOVE, _anchor_geom_cb, obj);
    efl_event_callback_del(sd->anchor, EFL_EVENT_DEL, _anchor_del_cb, obj);
@@ -242,7 +261,14 @@ _efl_ui_popup_anchor_anchor_set(Eo *obj, Efl_Ui_Popup_Anchor_Data *pd, Evas_Obje
 
         _anchor_calc(obj);
 
-        efl_event_callback_add(efl_ui_popup_parent_window_get(obj), EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, obj);
+        Evas_Object *parent = efl_provider_find(obj, EFL_UI_WIN_CLASS);
+        if (!parent)
+          {
+              ERR("Cannot find window parent");
+              return;
+          }
+
+        efl_event_callback_add(parent, EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, obj);
         efl_event_callback_add(anchor, EFL_GFX_EVENT_RESIZE, _anchor_geom_cb, obj);
         efl_event_callback_add(anchor, EFL_GFX_EVENT_MOVE, _anchor_geom_cb, obj);
         efl_event_callback_add(anchor, EFL_EVENT_DEL, _anchor_del_cb, obj);