[ATSPI] Modify some string and remove "Speak while screen off" item 47/106147/1
authorJunsuChoi <jsuya.choi@samsung.com>
Tue, 20 Dec 2016 12:19:04 +0000 (21:19 +0900)
committerJunsuChoi <jsuya.choi@samsung.com>
Tue, 20 Dec 2016 12:23:34 +0000 (21:23 +0900)
   remove "Speak while screen off" item in Screen reader(TTS) -> Setting menu
   with UX Guide and expression of the speech rate changed to percentage.

Change-Id: Ifbe4ddb8238154e7d9fcecc369f9edbbb4910102

setting-accessibility/include/setting-accessibility.h
setting-accessibility/src/setting-accessibility-screen-reader-settings.c

index 92cecfa6d4b6605054373d46c89de7cefb2260be..9df115f1075f9073d027a9b39e516cb8c2cb195a 100644 (file)
@@ -43,7 +43,7 @@
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_KEYBOARD_FEEDBACK_INFO "IDS_ACCS_OPT_ALWAYS_READ_OUT_KEYBOARD_INPUT_TTS"
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEAK_WHILE_SCREEN_OFF "Speak while screen off"
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEAK_WHILE_SCREEN_OFF_INFO "IDS_ACCS_SBODY_READ_OUT_NOTIFICATIONS_WHILE_THE_SCREEN_IS_OFF"
-#define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_HINTS "Read usage hints aloud"
+#define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_HINTS "IDS_ACCS_MBODY_READ_OUT_USAGE_HINTS_ABB"
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_VIBRATION_FEEDBACK "IDS_ACCS_MBODY_VIBRATION_FEEDBACK"
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SOUND_FEEDBACK "IDS_ACCS_MBODY_SOUND_FEEDBACK"
 
@@ -57,7 +57,7 @@
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_STATUS_BAR_INFORMATION_DESCRIPTION \
     "IDS_ACCS_SBODY_SELECT_WHICH_INFORMATION_FROM_INDICATORS_SHOWN_ON_THE_STATUS_BAR_WILL_BE_READ_OUT_WHEN_YOU_TRIPLE_TAP_THE_SCREEN_WITH_TWO_FINGERS_MSG"
 
-#define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEECH_RATE_POPUP_DESCRIPTION "Adjust speech rate level"
+#define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEECH_RATE_POPUP_DESCRIPTION "IDS_SCR_POP_DRAG_THE_SLIDER_TO_SET_THE_SPEECH_RATE"
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEECH_RATE_POPUP_CANCEL "IDS_ST_BUTTON_CANCEL_ABB"
 #define DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEECH_RATE_POPUP_DONE "IDS_ST_SK3_DONE"
 
@@ -80,7 +80,6 @@ struct _SettingAccessibility {
 
        Setting_GenGroupItem_Data *speech_rate_item;
        Setting_GenGroupItem_Data *keyboard_feedback_item;
-       Setting_GenGroupItem_Data *speak_while_screen_off_item;
        Setting_GenGroupItem_Data *hints_item;
        Setting_GenGroupItem_Data *vibration_feedback_item;
        Setting_GenGroupItem_Data *sound_feedback_item;
index 4c3b2cca0fa5c861b0b03d3fb58f4565cfc47f2b..5d56af711ca3b323c9770da19e510d283aac8019 100644 (file)
@@ -216,11 +216,17 @@ static void _on_popup_del(void *data, Evas *e, Evas_Object *obj,
        SETTING_TRACE_BEGIN;
        char buf[256];
        int speed_val = -1;
+       int s_speed_normal = -1;
+       int s_speed_max = -1;
+       int s_speed_min = -1;
        if (speech_rate_list_item) {
                if (0 != tts_setting_get_speed(&speed_val))
                        SETTING_TRACE("Failed to get speed");
 
-               snprintf(buf, sizeof(buf), "%d", speed_val);
+               if (0 !=  tts_setting_get_speed_range(&s_speed_min, &s_speed_normal, &s_speed_max))
+                       SETTING_TRACE("Fail to get speed range");
+               double s_speed_percent = (((double)speed_val - (double)s_speed_min)/((double)s_speed_max - (double)s_speed_min)) * 100;
+               snprintf(buf, sizeof(buf), "%.0f%%", s_speed_percent);
                SETTING_TRACE("Updating speed to %s", buf);
                G_FREE(speech_rate_list_item->sub_desc);
                speech_rate_list_item->sub_desc = (char *)g_strdup(buf);
@@ -363,43 +369,6 @@ static void _keyboard_feedback_mouse_up_Gendial_list_cb(
        _keyboard_feedback_vconf_update(list_item->chk_status ? 1 : 0);
 }
 
-static void _speak_while_screen_off_vconf_update(int state)
-{
-       vconf_set_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_SCREEN_READER_KEYBOARD_FEEDBACK,
-                       state ? 1 : 0);
-}
-
-static void _speak_while_screen_off_check_update(void *data, Evas_Object *obj,
-               void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       retm_if(data == NULL, "Data parameter is NULL");
-       Setting_GenGroupItem_Data *list_item =
-                       (Setting_GenGroupItem_Data *)data;
-
-       /* for genlist update status */
-       list_item->chk_status = elm_check_state_get(obj);
-
-       SETTING_TRACE_DEBUG("check_status: %i", list_item->chk_status);
-       _speak_while_screen_off_vconf_update(
-                       list_item->chk_status);
-       SETTING_TRACE_END;
-}
-
-static void _speak_while_screen_off_mouse_up_Gendial_list_cb(
-                       void *data, Evas_Object *obj, void *event_info)
-{
-       SETTING_TRACE_BEGIN;
-       Elm_Object_Item *item = (Elm_Object_Item *)event_info;
-       Setting_GenGroupItem_Data *list_item = (Setting_GenGroupItem_Data *)
-                       elm_object_item_data_get(item);
-
-       elm_genlist_item_selected_set(item, EINA_FALSE);
-       setting_update_gl_item_chk_status(list_item,
-                       list_item->chk_status ? 0 : 1);
-       _speak_while_screen_off_vconf_update(list_item->chk_status ? 1 : 0);
-}
-
 static void _hints_vconf_update(int state)
 {
        vconf_set_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_SCREEN_READER_DESCRIPTION,
@@ -611,6 +580,9 @@ void setting_accessibility_screen_reader_settings_page_create(
 
        char buf[256];
        int s_speed = -1;
+       int s_speed_normal = -1;
+       int s_speed_max = -1;
+       int s_speed_min = -1;
        int vconf_val = 0;
        int vconf_ret;
 
@@ -630,8 +602,11 @@ void setting_accessibility_screen_reader_settings_page_create(
        if (0 != tts_setting_get_speed(&s_speed))
                SETTING_TRACE("Fail to get speed");
 
-       snprintf(buf, sizeof(buf), "%d", s_speed);
-       SETTING_TRACE("TTS rate is %d", s_speed);
+       if (0 !=  tts_setting_get_speed_range(&s_speed_min, &s_speed_normal, &s_speed_max))
+               SETTING_TRACE("Fail to get speed range");
+       double s_speed_percent = (((double)s_speed - (double)s_speed_min)/((double)s_speed_max - (double)s_speed_min)) * 100;
+       snprintf(buf, sizeof(buf), "%.0f%%", s_speed_percent);
+       SETTING_TRACE("TTS rate is %.0f", s_speed_percent);
 
        /* Item 1 : Speech Rate */
        ad->speech_rate_item = setting_create_Gendial_field_def(
@@ -675,29 +650,7 @@ void setting_accessibility_screen_reader_settings_page_create(
                SETTING_TRACE("Keyboard feedback Item added");
        }
 
-       /* Item 3 : Speak while screen off */
-       vconf_ret = vconf_get_bool(VCONFKEY_SETAPPL_ACCESSIBILITY_SCREEN_READER_KEYBOARD_FEEDBACK, &vconf_val);
-       if (vconf_ret != 0) {
-               LOGE("Failed to get vconf bool value VCONFKEY_SETAPPL_ACCESSIBILITY_SCREEN_READER_KEYBOARD_FEEDBACK. Error: %d",
-                               vconf_ret);
-       }
-
-       ad->speak_while_screen_off_item = setting_create_Gendial_field_def(
-                               genlist, &itc_multiline_2text,
-                               _speak_while_screen_off_mouse_up_Gendial_list_cb,
-                               ad, SWALLOW_Type_1ICON_1RADIO, NULL,
-                               NULL, vconf_val ? 1 : 0,
-                               _(DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEAK_WHILE_SCREEN_OFF),
-                               _(DEVOPTION_STR_ACCESSIBILITY_SCREEN_READER_SETTINGS_SPEAK_WHILE_SCREEN_OFF_INFO),
-                               _speak_while_screen_off_check_update);
-
-       if (ad->speak_while_screen_off_item) {
-               ad->speak_while_screen_off_item->userdata = ad;
-               __BACK_POINTER_SET(ad->speak_while_screen_off_item);
-               SETTING_TRACE("Speak while screen off Item added");
-       }
-
-       /* Item 4 : Hints */
+       /* Item 3 : Hints */
        vconf_ret = vconf_get_bool(
                        VCONFKEY_SETAPPL_ACCESSIBILITY_SCREEN_READER_DESCRIPTION,
                        &vconf_val);
@@ -721,7 +674,7 @@ void setting_accessibility_screen_reader_settings_page_create(
                SETTING_TRACE("Hints Item added");
        }
 
-       /* Item 5 : Vibration Feedback */
+       /* Item 4 : Vibration Feedback */
        vconf_ret = vconf_get_bool(
                        VCONFKEY_SETAPPL_ACCESSIBILITY_SCREEN_READER_HAPTIC,
                        &vconf_val);
@@ -745,7 +698,7 @@ void setting_accessibility_screen_reader_settings_page_create(
                SETTING_TRACE("Vibration feedback Item added");
        }
 
-       /* Item 6 : Sound Feedback */
+       /* Item 5 : Sound Feedback */
        vconf_ret = vconf_get_bool(
                        VCONFKEY_SETAPPL_ACCESSIBILITY_SCREEN_READER_SOUND_FEEDBACK,
                        &vconf_val);