#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"
#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"
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;
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);
_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,
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;
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(
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);
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);
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);