Add accessibility descriptions for additional non-character keys.

Bug: 6621009
Change-Id: I82fb2dc6af0fda795397e8be8c09a4f53b1656ab
main
alanv 2012-07-25 11:03:41 -07:00
parent 467f829bc8
commit ba037c62ac
2 changed files with 11 additions and 5 deletions

View File

@ -181,6 +181,12 @@
<string name="spoken_description_search">Search</string> <string name="spoken_description_search">Search</string>
<!-- Spoken description for the "U+2022" (BULLET) keyboard key. --> <!-- Spoken description for the "U+2022" (BULLET) keyboard key. -->
<string name="spoken_description_dot">Dot</string> <string name="spoken_description_dot">Dot</string>
<!-- Spoken description for the "Switch language" keyboard key. -->
<string name="spoken_description_language_switch">Switch language</string>
<!-- Spoken description for the "Next" action keyboard key. -->
<string name="spoken_description_action_next">Next</string>
<!-- Spoken description for the "Previous" action keyboard key. -->
<string name="spoken_description_action_previous">Previous</string>
<!-- Spoken feedback after turning "Shift" mode on. --> <!-- Spoken feedback after turning "Shift" mode on. -->
<string name="spoken_description_shiftmode_on">Shift enabled</string> <string name="spoken_description_shiftmode_on">Shift enabled</string>

View File

@ -60,10 +60,8 @@ public class KeyCodeDescriptionMapper {
// Manual label substitutions for key labels with no string resource // Manual label substitutions for key labels with no string resource
mKeyLabelMap.put(":-)", R.string.spoken_description_smiley); mKeyLabelMap.put(":-)", R.string.spoken_description_smiley);
// Symbols that most TTS engines can't speak
mKeyCodeMap.put(' ', R.string.spoken_description_space);
// Special non-character codes defined in Keyboard // Special non-character codes defined in Keyboard
mKeyCodeMap.put(Keyboard.CODE_SPACE, R.string.spoken_description_space);
mKeyCodeMap.put(Keyboard.CODE_DELETE, R.string.spoken_description_delete); mKeyCodeMap.put(Keyboard.CODE_DELETE, R.string.spoken_description_delete);
mKeyCodeMap.put(Keyboard.CODE_ENTER, R.string.spoken_description_return); mKeyCodeMap.put(Keyboard.CODE_ENTER, R.string.spoken_description_return);
mKeyCodeMap.put(Keyboard.CODE_SETTINGS, R.string.spoken_description_settings); mKeyCodeMap.put(Keyboard.CODE_SETTINGS, R.string.spoken_description_settings);
@ -71,6 +69,9 @@ public class KeyCodeDescriptionMapper {
mKeyCodeMap.put(Keyboard.CODE_SHORTCUT, R.string.spoken_description_mic); mKeyCodeMap.put(Keyboard.CODE_SHORTCUT, R.string.spoken_description_mic);
mKeyCodeMap.put(Keyboard.CODE_SWITCH_ALPHA_SYMBOL, R.string.spoken_description_to_symbol); mKeyCodeMap.put(Keyboard.CODE_SWITCH_ALPHA_SYMBOL, R.string.spoken_description_to_symbol);
mKeyCodeMap.put(Keyboard.CODE_TAB, R.string.spoken_description_tab); mKeyCodeMap.put(Keyboard.CODE_TAB, R.string.spoken_description_tab);
mKeyCodeMap.put(Keyboard.CODE_LANGUAGE_SWITCH, R.string.spoken_description_language_switch);
mKeyCodeMap.put(Keyboard.CODE_ACTION_NEXT, R.string.spoken_description_action_next);
mKeyCodeMap.put(Keyboard.CODE_ACTION_PREVIOUS, R.string.spoken_description_action_previous);
} }
/** /**
@ -274,8 +275,7 @@ public class KeyCodeDescriptionMapper {
return context.getString(OBSCURED_KEY_RES_ID); return context.getString(OBSCURED_KEY_RES_ID);
} }
final int resId = mKeyCodeMap.get(code); if (mKeyCodeMap.indexOfKey(code) >= 0) {
if (resId != 0) {
return context.getString(mKeyCodeMap.get(code)); return context.getString(mKeyCodeMap.get(code));
} else if (isDefinedNonCtrl) { } else if (isDefinedNonCtrl) {
return Character.toString((char) code); return Character.toString((char) code);