rimmed pushed a commit to branch master. http://git.enlightenment.org/tools/eflete.git/commit/?id=d6d7a0a4e0a2c9179df0f36abaad04f950b71aea
commit d6d7a0a4e0a2c9179df0f36abaad04f950b71aea Author: Andrii Kroitor <an.kroi...@samsung.com> Date: Tue Mar 29 09:36:11 2016 +0300 genlist: move double-click expand from code to style Fixes T3350 --- data/themes/default/widgets/genlist.edc | 48 +++++++++++++++++++++++++++++++++ src/bin/ui/project_navigator.c | 6 +---- src/bin/ui/style_manager.c | 14 ---------- src/bin/ui/workspace/demo_group.c | 11 -------- src/bin/ui/workspace/group_navigator.c | 12 --------- 5 files changed, 49 insertions(+), 42 deletions(-) diff --git a/data/themes/default/widgets/genlist.edc b/data/themes/default/widgets/genlist.edc index 622a2d2..9883ba2 100644 --- a/data/themes/default/widgets/genlist.edc +++ b/data/themes/default/widgets/genlist.edc @@ -508,6 +508,13 @@ group { name: "elm/genlist/tree/default/default"; } } } + part { name: "events"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } part { name: "arrow"; type: IMAGE; description { state: "default" 0.0; @@ -650,6 +657,11 @@ group { name: "elm/genlist/tree/default/default"; action: STATE_SET "default" 0.00; target: "disclip"; } + program { name: "dbl_click"; + signal: "mouse,down,1,double"; + source: "events"; + action: SIGNAL_EMIT "elm,action,expand,toggle" "elm"; + } } } @@ -749,6 +761,13 @@ group { name: "elm/genlist/tree/part/default"; color: 255 255 255 0; } } + part { name: "events"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } part { name: "arrow"; type: IMAGE; description { state: "default" 0.0; @@ -823,6 +842,11 @@ group { name: "elm/genlist/tree/part/default"; action: STATE_SET "default" 0.00; target: "disclip"; } + program { name: "dbl_click"; + signal: "mouse,down,1,double"; + source: "events"; + action: SIGNAL_EMIT "elm,action,expand,toggle" "elm"; + } } } @@ -1254,6 +1278,13 @@ group { name: "elm/genlist/tree/items_caption/default"; } } } + part { name: "events"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } part { name: "arrow"; type: IMAGE; description { state: "default" 0.0; @@ -1351,6 +1382,11 @@ group { name: "elm/genlist/tree/items_caption/default"; action: STATE_SET "default" 0.00; target: "disclip"; } + program { name: "dbl_click"; + signal: "mouse,down,1,double"; + source: "events"; + action: SIGNAL_EMIT "elm,action,expand,toggle" "elm"; + } } } @@ -1466,6 +1502,13 @@ group { name: "elm/genlist/tree/caption/default"; } } } + part { name: "events"; + type: RECT; + repeat_events: 1; + description { state: "default" 0.0; + color: 0 0 0 0; + } + } part { name: "arrow"; type: IMAGE; description { state: "default" 0.0; @@ -1561,6 +1604,11 @@ group { name: "elm/genlist/tree/caption/default"; action: STATE_SET "default" 0.00; target: "arrow"; } + program { name: "dbl_click"; + signal: "mouse,down,1,double"; + source: "events"; + action: SIGNAL_EMIT "elm,action,expand,toggle" "elm"; + } } } diff --git a/src/bin/ui/project_navigator.c b/src/bin/ui/project_navigator.c index cfb17dd..6c80b30 100644 --- a/src/bin/ui/project_navigator.c +++ b/src/bin/ui/project_navigator.c @@ -279,11 +279,7 @@ _on_clicked_double(void *data __UNUSED__, { Elm_Object_Item *glit = (Elm_Object_Item *)event_info; - if (elm_genlist_item_type_get(glit) == ELM_GENLIST_ITEM_TREE) - { - elm_genlist_item_expanded_set(glit, !elm_genlist_item_expanded_get(glit)); - } - else + if (elm_genlist_item_type_get(glit) != ELM_GENLIST_ITEM_TREE) { Group *group = (Group *)elm_object_item_data_get(glit); evas_object_smart_callback_call(project_navigator.layout, SIGNAL_GROUP_OPEN, group); diff --git a/src/bin/ui/style_manager.c b/src/bin/ui/style_manager.c index 19c5cef..3bf5116 100644 --- a/src/bin/ui/style_manager.c +++ b/src/bin/ui/style_manager.c @@ -802,19 +802,6 @@ _contracted_cb(void *data __UNUSED__, } static void -_on_clicked_double(void *data __UNUSED__, - Evas_Object *obj __UNUSED__, - void *event_info) -{ - Elm_Object_Item *glit = (Elm_Object_Item *)event_info; - - if (elm_genlist_item_type_get(glit) == ELM_GENLIST_ITEM_TREE) - { - elm_genlist_item_expanded_set(glit, !elm_genlist_item_expanded_get(glit)); - } -} - -static void _on_bt_add(void *data, Evas_Object *obj __UNUSED__, void *event_info __UNUSED__) @@ -993,7 +980,6 @@ style_manager_add() style_edit->glist = elm_genlist_add(main_layout); elm_object_part_content_set(main_layout, "elm.swallow.list", style_edit->glist); - evas_object_smart_callback_add(style_edit->glist, "clicked,double", _on_clicked_double, NULL); evas_object_smart_callback_add(style_edit->glist, "expand,request", _expand_request_cb, NULL); evas_object_smart_callback_add(style_edit->glist, "expanded", _expanded_cb, style_edit); evas_object_smart_callback_add(style_edit->glist, "contract,request", _contract_request_cb, NULL); diff --git a/src/bin/ui/workspace/demo_group.c b/src/bin/ui/workspace/demo_group.c index ff39ff9..19bbc20 100644 --- a/src/bin/ui/workspace/demo_group.c +++ b/src/bin/ui/workspace/demo_group.c @@ -94,16 +94,6 @@ _sig_label_get(void *data, } static void -_on_clicked_double(void *data __UNUSED__, - Evas_Object *obj __UNUSED__, - void *event_info) -{ - Elm_Object_Item *glit = (Elm_Object_Item *)event_info; - - if (elm_genlist_item_type_get(glit) == ELM_GENLIST_ITEM_TREE) - elm_genlist_item_expanded_set(glit, !elm_genlist_item_expanded_get(glit)); -} -static void _expand_request_cb(void *data __UNUSED__, Evas_Object *o __UNUSED__, void *event_info) @@ -446,7 +436,6 @@ demo_group_add(Group *group) evas_object_smart_callback_add(ap.win, SIGNAL_PART_RENAMED, _part_renamed, pl); evas_object_smart_callback_add(ap.win, SIGNAL_EDITOR_PROGRAM_UPDATE, _program_add, pl); - evas_object_smart_callback_add(pl->genlist, "clicked,double", _on_clicked_double, pl); evas_object_smart_callback_add(pl->genlist, "expand,request", _expand_request_cb, pl); evas_object_smart_callback_add(pl->genlist, "contract,request", _contract_request_cb, pl); evas_object_smart_callback_add(pl->genlist, "expanded", _expanded_cb, pl); diff --git a/src/bin/ui/workspace/group_navigator.c b/src/bin/ui/workspace/group_navigator.c index 58e0f9d..e310cef 100644 --- a/src/bin/ui/workspace/group_navigator.c +++ b/src/bin/ui/workspace/group_navigator.c @@ -365,17 +365,6 @@ _contract_request_cb(void *data __UNUSED__, } static void -_on_clicked_double(void *data __UNUSED__, - Evas_Object *obj __UNUSED__, - void *event_info) -{ - Elm_Object_Item *glit = (Elm_Object_Item *)event_info; - - if (elm_genlist_item_type_get(glit) == ELM_GENLIST_ITEM_TREE) - elm_genlist_item_expanded_set(glit, !elm_genlist_item_expanded_get(glit)); -} - -static void _on_activated(void *data, Evas_Object *obj __UNUSED__, void *event_info) @@ -1935,7 +1924,6 @@ group_navigator_add(Evas_Object *parent, Group *group) elm_scroller_policy_set(pl->genlist, ELM_SCROLLER_POLICY_OFF, ELM_SCROLLER_POLICY_AUTO); evas_object_show(pl->genlist); elm_object_content_set(pl->layout, pl->genlist); - evas_object_smart_callback_add(pl->genlist, "clicked,double", _on_clicked_double, pl); evas_object_smart_callback_add(pl->genlist, "activated", _on_activated, pl); evas_object_smart_callback_add(pl->genlist, "expand,request", _expand_request_cb, pl); evas_object_smart_callback_add(pl->genlist, "contract,request", _contract_request_cb, pl); --