jaehyun pushed a commit to branch master.

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

commit a026405a6a5dc94924e5db0ed457c01e701f271d
Author: Bowon Ryu <bowon....@samsung.com>
Date:   Tue Mar 26 14:20:27 2019 +0900

    efl_ui_tab_pager: fixed issue where tab_pager does not work
    
    Summary:
    I fixed the tab_pager behavior problem caused by changing efl interface.
    and I have also fixed some sample code errors.
     - using efl_file_load for efl_file_set
     - using efl_del for unpacked tab_page
     - disable unimplemented features
    
    Test Plan: elementary_test -to efl.ui.tab_pager
    
    Reviewers: Jaehyun_Cho
    
    Reviewed By: Jaehyun_Cho
    
    Subscribers: cedric, #reviewers, #committers
    
    Tags: #efl
    
    Differential Revision: https://phab.enlightenment.org/D8471
---
 src/bin/elementary/test_ui_tab_pager.c | 5 +++++
 src/lib/elementary/efl_ui_tab_bar.c    | 4 ++--
 src/lib/elementary/efl_ui_tab_pager.c  | 2 +-
 src/lib/elementary/efl_ui_tab_pager.eo | 2 +-
 4 files changed, 9 insertions(+), 4 deletions(-)

diff --git a/src/bin/elementary/test_ui_tab_pager.c 
b/src/bin/elementary/test_ui_tab_pager.c
index ef8ccae0f4..c85b4b7fd2 100644
--- a/src/bin/elementary/test_ui_tab_pager.c
+++ b/src/bin/elementary/test_ui_tab_pager.c
@@ -89,6 +89,7 @@ content_add(Eo *parent, char *text)
    page = efl_add(EFL_UI_LAYOUT_CLASS, parent,
                   efl_file_set(efl_added, buf),
                   efl_file_key_set(efl_added, "page_layout"),
+                  efl_file_load(efl_added),
                   efl_text_set(efl_part(efl_added, "text"), text),
                   efl_gfx_hint_weight_set(efl_added, EVAS_HINT_EXPAND, 
EVAS_HINT_EXPAND),
                   efl_gfx_hint_fill_set(efl_added, EINA_TRUE, EINA_TRUE));
@@ -398,6 +399,7 @@ _unpack_btn_cb(void *data, const Efl_Event *ev EINA_UNUSED)
    int index = efl_ui_pager_current_page_get(tab_pager);
    Eo *tab_page = efl_pack_content_get(tab_pager, index);
    efl_pack_unpack(tab_pager, tab_page);
+   efl_del(tab_page);
 }
 
 static void
@@ -446,6 +448,7 @@ _unpack_cb(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info)
    btn = efl_add(EFL_UI_BUTTON_CLASS, box,
                  efl_text_set(efl_added, "Clear"),
                  efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, 
_clear_btn_cb, tab_pager),
+                 efl_ui_widget_disabled_set(efl_added, EINA_TRUE), //Soon to 
be implemented
                  efl_pack_end(box, efl_added));
 
    /* Unpack */
@@ -458,6 +461,7 @@ _unpack_cb(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info)
    btn = efl_add(EFL_UI_BUTTON_CLASS, box,
                  efl_text_set(efl_added, "Unpack All"),
                  efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, 
_unpack_all_btn_cb, tab_pager),
+                 efl_ui_widget_disabled_set(efl_added, EINA_TRUE), //Soon to 
be implemented
                  efl_pack_end(box, efl_added));
 
    in_box = efl_add(EFL_UI_BOX_CLASS, box,
@@ -478,6 +482,7 @@ _unpack_cb(void *data, Evas_Object *obj EINA_UNUSED, void 
*event_info)
                  efl_text_set(efl_added, "Unpack At"),
                  efl_event_callback_add(efl_added, EFL_UI_EVENT_CLICKED, 
_unpack_at_btn_cb, tsd),
                  efl_event_callback_add(efl_added, EFL_EVENT_DEL, 
_unpack_at_btn_del_cb, tsd),
+                 efl_ui_widget_disabled_set(efl_added, EINA_TRUE), //Soon to 
be implemented
                  efl_pack_end(in_box, efl_added));
 }
 
diff --git a/src/lib/elementary/efl_ui_tab_bar.c 
b/src/lib/elementary/efl_ui_tab_bar.c
index b8c1dfc6f8..e5fb3414df 100644
--- a/src/lib/elementary/efl_ui_tab_bar.c
+++ b/src/lib/elementary/efl_ui_tab_bar.c
@@ -187,9 +187,9 @@ _tab_select(Efl_Ui_Tab_Bar_Data *sd, Tab_Info *ti)
 
         index = eina_list_data_idx(sd->tab_infos, ti);
 
-        efl_event_callback_call(tp, EFL_UI_EVENT_ITEM_SELECTED, NULL);
-
         sd->cur = index;
+
+        efl_event_callback_call(tp, EFL_UI_EVENT_ITEM_SELECTED, NULL);
      }
 }
 
diff --git a/src/lib/elementary/efl_ui_tab_pager.c 
b/src/lib/elementary/efl_ui_tab_pager.c
index 593f000f1c..4187f31174 100644
--- a/src/lib/elementary/efl_ui_tab_pager.c
+++ b/src/lib/elementary/efl_ui_tab_pager.c
@@ -26,7 +26,7 @@ _select(Eo *obj, int index)
 static void
 _tab_select_cb(void *data, const Efl_Event *event)
 {
-   int index = (intptr_t)event->info;
+   int index = efl_ui_tab_bar_current_tab_get(event->object);
    _select(data, index);
 }
 
diff --git a/src/lib/elementary/efl_ui_tab_pager.eo 
b/src/lib/elementary/efl_ui_tab_pager.eo
index b602cce018..c7e0b5504a 100644
--- a/src/lib/elementary/efl_ui_tab_pager.eo
+++ b/src/lib/elementary/efl_ui_tab_pager.eo
@@ -14,7 +14,7 @@ class @beta Efl.Ui.Tab_Pager extends Efl.Ui.Pager
       Efl.Container.content_count;
       Efl.Pack.pack_clear;                     // TODO
       Efl.Pack.unpack_all;                     // TODO
-      Efl.Pack.unpack;                         // TODO
+      Efl.Pack.unpack;
       Efl.Pack_Linear.pack_begin;
       Efl.Pack_Linear.pack_end;
       Efl.Pack_Linear.pack_before;

-- 


Reply via email to