seoz pushed a commit to branch master. http://git.enlightenment.org/core/elementary.git/commit/?id=fef3d72516a75d32e60e6ebf69a25ca8f8298248
commit fef3d72516a75d32e60e6ebf69a25ca8f8298248 Author: Amitesh Singh <amitesh...@samsung.com> Date: Sun Apr 6 00:10:55 2014 +0900 focus: Renamed the config APIs _item_focus_on_selection_get/set to _item_select_on_focus_disabled_set/get() Summary: - List: On Enter/Space/KP_Enter key press, focused item gets selected. Test Plan: elementary_test->List Focus Reviewers: seoz, raster Reviewed By: seoz CC: seoz Differential Revision: https://phab.enlightenment.org/D704 --- config/default/base.src | 2 +- config/mobile/base.src | 2 +- config/standard/base.src | 2 +- src/bin/test_list.c | 12 ++++++------ src/lib/elm_config.c | 16 ++++++++-------- src/lib/elm_config.h | 16 +++++++++------- src/lib/elm_list.c | 33 +++++++++++++++++---------------- src/lib/elm_priv.h | 2 +- 8 files changed, 44 insertions(+), 41 deletions(-) diff --git a/config/default/base.src b/config/default/base.src index 842b8c9..77890e9 100644 --- a/config/default/base.src +++ b/config/default/base.src @@ -45,7 +45,7 @@ group "Elm_Config" struct { value "focus_highlight_enable" uchar: 0; value "focus_highlight_animate" uchar: 0; value "focus_highlight_clip_disable" uchar: 0; - value "item_focus_on_selection" uchar: 1; + value "item_select_on_focus_disable" uchar: 0; value "focus_move_policy" uchar: 0; value "toolbar_shrink_mode" int: 3; value "fileselector_expand_enable" uchar: 0; diff --git a/config/mobile/base.src b/config/mobile/base.src index 97773a9..abe3c2b 100644 --- a/config/mobile/base.src +++ b/config/mobile/base.src @@ -45,7 +45,7 @@ group "Elm_Config" struct { value "focus_highlight_enable" uchar: 0; value "focus_highlight_animate" uchar: 0; value "focus_highlight_clip_disable" uchar: 0; - value "item_focus_on_selection" uchar: 1; + value "item_select_on_focus_disable" uchar: 0; value "focus_move_policy" uchar: 0; value "toolbar_shrink_mode" int: 3; value "fileselector_expand_enable" uchar: 0; diff --git a/config/standard/base.src b/config/standard/base.src index fa846ab..b6071b4 100644 --- a/config/standard/base.src +++ b/config/standard/base.src @@ -45,7 +45,7 @@ group "Elm_Config" struct { value "focus_highlight_enable" uchar: 0; value "focus_highlight_animate" uchar: 0; value "focus_highlight_clip_disable" uchar: 1; - value "item_focus_on_selection" uchar: 1; + value "item_select_on_focus_disable" uchar: 0; value "focus_move_policy" uchar: 0; value "toolbar_shrink_mode" int: 3; value "fileselector_expand_enable" uchar: 1; diff --git a/src/bin/test_list.c b/src/bin/test_list.c index 2003ff1..fb2922e 100644 --- a/src/bin/test_list.c +++ b/src/bin/test_list.c @@ -1318,10 +1318,10 @@ test_list_focus_item_loop_enable_check_changed(void *data, Evas_Object *obj, } static void -test_list_focus_item_focus_on_selection_changed(void *data EINA_UNUSED, Evas_Object *obj, - void *event_info EINA_UNUSED) +test_list_focus_item_select_on_focus_disable_changed(void *data EINA_UNUSED, Evas_Object *obj, + void *event_info EINA_UNUSED) { - elm_config_item_focus_on_selection_set(elm_check_state_get(obj)); + elm_config_item_select_on_focus_disabled_set(elm_check_state_get(obj)); } static void @@ -1523,11 +1523,11 @@ _test_list_focus(const char *name, const char *title, Eina_Bool horiz) evas_object_show(chk); chk = elm_check_add(bx_opt); - elm_object_text_set(chk, "Item Focus on selection enable"); - elm_check_state_set(chk, elm_config_item_focus_on_selection_get()); + elm_object_text_set(chk, "Item Select on Focus disable"); + elm_check_state_set(chk, elm_config_item_select_on_focus_disabled_get()); evas_object_size_hint_weight_set(chk, EVAS_HINT_EXPAND, 0.0); evas_object_smart_callback_add(chk, "changed", - test_list_focus_item_focus_on_selection_changed, + test_list_focus_item_select_on_focus_disable_changed, NULL); elm_box_pack_end(bx_opt, chk); evas_object_show(chk); diff --git a/src/lib/elm_config.c b/src/lib/elm_config.c index 05ac9cc..f9de3ec 100644 --- a/src/lib/elm_config.c +++ b/src/lib/elm_config.c @@ -507,7 +507,7 @@ _desc_init(void) ELM_CONFIG_VAL(D, T, focus_highlight_animate, T_UCHAR); ELM_CONFIG_VAL(D, T, focus_highlight_clip_disable, T_UCHAR); ELM_CONFIG_VAL(D, T, focus_move_policy, T_UCHAR); - ELM_CONFIG_VAL(D, T, item_focus_on_selection, T_UCHAR); + ELM_CONFIG_VAL(D, T, item_select_on_focus_disable, T_UCHAR); ELM_CONFIG_VAL(D, T, toolbar_shrink_mode, T_INT); ELM_CONFIG_VAL(D, T, fileselector_expand_enable, T_UCHAR); ELM_CONFIG_VAL(D, T, fileselector_double_tap_navigation_enable, T_UCHAR); @@ -1491,7 +1491,7 @@ _config_load(void) _elm_config->focus_highlight_animate = EINA_TRUE; _elm_config->focus_highlight_clip_disable = EINA_FALSE; _elm_config->focus_move_policy = ELM_FOCUS_MOVE_POLICY_CLICK; - _elm_config->item_focus_on_selection = EINA_TRUE; + _elm_config->item_select_on_focus_disable = EINA_TRUE; _elm_config->toolbar_shrink_mode = 2; _elm_config->fileselector_expand_enable = EINA_FALSE; _elm_config->fileselector_double_tap_navigation_enable = EINA_FALSE; @@ -2069,8 +2069,8 @@ _env_get(void) s = getenv("ELM_FOCUS_MOVE_POLICY"); if (s) _elm_config->focus_move_policy = !!atoi(s); - s = getenv("ELM_ITEM_FOCUS_ON_SELECTION"); - if (s) _elm_config->item_focus_on_selection = !!atoi(s); + s = getenv("ELM_ITEM_SELECT_ON_FOCUS_DISABLE"); + if (s) _elm_config->item_select_on_focus_disable = !!atoi(s); s = getenv("ELM_TOOLBAR_SHRINK_MODE"); if (s) _elm_config->toolbar_shrink_mode = atoi(s); @@ -2605,15 +2605,15 @@ elm_config_focus_move_policy_set(Elm_Focus_Move_Policy policy) } EAPI Eina_Bool -elm_config_item_focus_on_selection_get(void) +elm_config_item_select_on_focus_disabled_get(void) { - return _elm_config->item_focus_on_selection; + return _elm_config->item_select_on_focus_disable; } EAPI void -elm_config_item_focus_on_selection_set(Eina_Bool enabled) +elm_config_item_select_on_focus_disabled_set(Eina_Bool disable) { - _elm_config->item_focus_on_selection = !!enabled; + _elm_config->item_select_on_focus_disable = !!disable; } EAPI Eina_Bool diff --git a/src/lib/elm_config.h b/src/lib/elm_config.h index 5af8833..d092441 100644 --- a/src/lib/elm_config.h +++ b/src/lib/elm_config.h @@ -1278,24 +1278,26 @@ EAPI Elm_Focus_Move_Policy elm_config_focus_move_policy_get(void); EAPI void elm_config_focus_move_policy_set(Elm_Focus_Move_Policy policy); /** - * Set elementary item focus on selection + * Get disable status of item select on focus feature. * - * @see elm_config_item_focus_on_selection_set + * @return The item select on focus disable status + * + * @see elm_config_item_select_on_focus_disabled_set * @since 1.10 * @ingroup Focus */ -EAPI Eina_Bool elm_config_item_focus_on_selection_get(void); +EAPI Eina_Bool elm_config_item_select_on_focus_disabled_get(void); /** - * Get elementary item focus on selection + * Set the disable status of the item select on focus feature. * - * @param enabled Enable item focus on selection if @c EINA_TRUE, disable otherwise + * @param disable Disable item select on focus if @c EINA_TRUE, enable otherwise * - * @see elm_config_item_focus_on_selection_get + * @see elm_config_item_select_on_focus_disabled_get * @since 1.10 * @ingroup Focus */ -EAPI void elm_config_item_focus_on_selection_set(Eina_Bool enabled); +EAPI void elm_config_item_select_on_focus_disabled_set(Eina_Bool enabled); /** * Get the system mirrored mode. This determines the default mirrored mode diff --git a/src/lib/elm_list.c b/src/lib/elm_list.c index 0694b0e..5a44e83 100644 --- a/src/lib/elm_list.c +++ b/src/lib/elm_list.c @@ -353,7 +353,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca if ((sd->h_mode && !focused)) { - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) { if (evas_key_modifier_is_set(ev->modifiers, "Shift")) sel_ret = _item_multi_select_up(sd); @@ -379,7 +379,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca else { it = (Elm_List_Item *)elm_list_last_item_get(obj); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); @@ -400,7 +400,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca if (sd->h_mode && !focused) { - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) { if (evas_key_modifier_is_set(ev->modifiers, "Shift")) sel_ret = _item_multi_select_down(sd); @@ -426,7 +426,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca else { it = (Elm_List_Item *)elm_list_first_item_get(obj); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); @@ -447,7 +447,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca if (!sd->h_mode && !focused) { - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) { if (evas_key_modifier_is_set(ev->modifiers, "Shift")) sel_ret = _item_multi_select_up(sd); @@ -473,7 +473,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca else { it = (Elm_List_Item *)elm_list_last_item_get(obj); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); @@ -494,7 +494,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca if (!sd->h_mode && !focused) { - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) { if (evas_key_modifier_is_set(ev->modifiers, "Shift")) sel_ret = _item_multi_select_down(sd); @@ -520,7 +520,7 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca else { it = (Elm_List_Item *)elm_list_first_item_get(obj); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); @@ -596,13 +596,14 @@ _elm_list_elm_widget_event(Eo *obj, Elm_List_Data *sd, Evas_Object *src, Evas_Ca } else if (((!strcmp(ev->key, "Return")) || (!strcmp(ev->key, "KP_Enter")) || - (!strcmp(ev->key, "space"))) - && (!sd->multi) && (sd->selected)) + (!strcmp(ev->key, "space")))) { - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable && + (!sd->multi) && (sd->selected)) it = (Elm_List_Item *)elm_list_selected_item_get(obj); else it = (Elm_List_Item *)elm_object_focused_item_get(obj); + elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); if (it) evas_object_smart_callback_call(WIDGET(it), SIG_ACTIVATED, it); } else if (!strcmp(ev->key, "Escape")) @@ -1236,7 +1237,7 @@ _elm_list_elm_widget_on_focus(Eo *obj, Elm_List_Data *sd) it = _elm_list_nearest_visible_item_get(obj, it); if (it) { - if (_elm_config->item_focus_on_selection && is_sel) + if (!_elm_config->item_select_on_focus_disable && is_sel) elm_list_item_selected_set(it, EINA_TRUE); else elm_object_item_focus_set(it, EINA_TRUE); @@ -1707,7 +1708,7 @@ _elm_list_looping_left_cb(void *data, { Evas_Object *list = data; Elm_List_Item *it = (Elm_List_Item *)elm_list_last_item_get(list); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); @@ -1722,7 +1723,7 @@ _elm_list_looping_right_cb(void *data, { Evas_Object *list = data; Elm_List_Item *it = (Elm_List_Item *)elm_list_first_item_get(list); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); @@ -1737,7 +1738,7 @@ _elm_list_looping_up_cb(void *data, { Evas_Object *list = data; Elm_List_Item *it = (Elm_List_Item *)elm_list_last_item_get(list); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); @@ -1752,7 +1753,7 @@ _elm_list_looping_down_cb(void *data, { Evas_Object *list = data; Elm_List_Item *it = (Elm_List_Item *)elm_list_first_item_get(list); - if (_elm_config->item_focus_on_selection) + if (!_elm_config->item_select_on_focus_disable) elm_list_item_selected_set((Elm_Object_Item *)it, EINA_TRUE); else elm_object_item_focus_set((Elm_Object_Item *)it, EINA_TRUE); diff --git a/src/lib/elm_priv.h b/src/lib/elm_priv.h index 4ebccb1..00420af 100644 --- a/src/lib/elm_priv.h +++ b/src/lib/elm_priv.h @@ -229,7 +229,7 @@ struct _Elm_Config unsigned char focus_highlight_animate; unsigned char focus_highlight_clip_disable; /**< This shows disabled status of focus highlight clip feature. This value is false by default so the focus highlight is clipped. */ unsigned char focus_move_policy; /**< This show how the elementary focus is moved to another object. Focus can be moved by click or mouse_in. */ - unsigned char item_focus_on_selection; /**< flag for item focus on selection.*/ + unsigned char item_select_on_focus_disable; /**< This shows the disabled status of select on focus feature. This value is false by default so that select on focus feature is enabled by default.*/ int toolbar_shrink_mode; unsigned char fileselector_expand_enable; unsigned char fileselector_double_tap_navigation_enable; --