[Accessibility] Auto Tap keyboard genlist item selected cb. 51/149051/5
authorPawel Kurowski <p.kurowski2@samsung.com>
Mon, 11 Sep 2017 10:35:20 +0000 (12:35 +0200)
committerPawel Kurowski <p.kurowski2@samsung.com>
Mon, 18 Sep 2017 10:25:47 +0000 (12:25 +0200)
Change-Id: I08a067e565388cb3c46e9fe4b7636e5ce0107aa4

setting-accessibility/src/setting-accessibility-universal-switch-settings.c

index b723a9e23f1dbe5b41d68cbb156dbc4c36e97a25..f58bc61111e15163ecb8012ac74643e4a433a401 100755 (executable)
@@ -1501,6 +1501,26 @@ static void __create_scanning_group(SettingAccessibility *ad, Evas_Object *genli
        SETTING_TRACE_END;
 }
 
+
+static void __auto_tap_kbd_menu_item_selected(void *data, Evas_Object *obj, void *event_info)
+{
+       SETTING_TRACE_BEGIN;
+       retm_if(event_info == NULL, "Invalid argument: event_info is NULL");
+       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
+
+       elm_genlist_item_selected_set(item, EINA_FALSE);
+
+       Setting_GenGroupItem_Data *list_item = elm_object_item_data_get(item);
+       setting_retm_if(list_item == NULL, "Data parameter is NULL");
+       setting_update_gl_item_chk_status(list_item, list_item->chk_status ? 0 : 1);
+
+       SettingAccessibility *ad = (SettingAccessibility *)list_item->userdata;
+       ad->auto_tap_kbd_state = list_item->chk_status;
+
+       __update_vconf_value(VCONFKEY_SETAPPL_ACCESSIBILITY_UNIVERSAL_SWITCH_SETTINGS_AUTO_TAP_KBD_STATE, (bool *)&list_item->chk_status, NULL, NULL);
+       SETTING_TRACE_END;
+}
+
 static void __create_additional_settings_group(SettingAccessibility *ad, Evas_Object *genlist)
 {
        const char *str = NULL;
@@ -1539,7 +1559,7 @@ static void __create_additional_settings_group(SettingAccessibility *ad, Evas_Ob
                elm_object_item_disabled_set(ad->universal_switch_auto_move_int->item, (Eina_Bool)ad->auto_scan);
 
        __add_menu_item(ad, genlist, _(DEVOPTION_STR_ACCESSIBILITY_UNIVERSAL_SWITCH_SETTINGS_GROUP_ADD_SETTINGS_AUTO_TAP_KBD),
-                       _(DEVOPTION_STR_ACCESSIBILITY_UNIVERSAL_SWITCH_SETTINGS_GROUP_ADD_SETTINGS_AUTO_TAP_KBD_SUB), NULL, true, ad->auto_tap_kbd_state, __auto_tap_kbd_checkbox_cb);
+                       _(DEVOPTION_STR_ACCESSIBILITY_UNIVERSAL_SWITCH_SETTINGS_GROUP_ADD_SETTINGS_AUTO_TAP_KBD_SUB), __auto_tap_kbd_menu_item_selected, true, ad->auto_tap_kbd_state, __auto_tap_kbd_checkbox_cb);
 }
 
 static void __create_feedback_group(SettingAccessibility *ad, Evas_Object *genlist)