aboutsummaryrefslogtreecommitdiffstats
path: root/java
diff options
context:
space:
mode:
Diffstat (limited to 'java')
-rw-r--r--java/res/xml-xlarge/kbd_phone.xml2
-rw-r--r--java/res/xml-xlarge/kbd_phone_symbols.xml2
-rw-r--r--java/res/xml/kbd_qwerty_black_symbol.xml4
-rw-r--r--java/src/com/android/inputmethod/latin/KeyboardSwitcher.java13
4 files changed, 15 insertions, 6 deletions
diff --git a/java/res/xml-xlarge/kbd_phone.xml b/java/res/xml-xlarge/kbd_phone.xml
index 57575b602..842c74bf5 100644
--- a/java/res/xml-xlarge/kbd_phone.xml
+++ b/java/res/xml-xlarge/kbd_phone.xml
@@ -69,7 +69,7 @@
</Row>
<Row>
<Key
- latin:codes="@integer/key_switch_alpha_symbol"
+ latin:codes="@integer/key_shift"
latin:keyLabel="@string/label_more_key"
latin:keyLabelOption="fontNormal|alignLeft|alignBottom"
latin:isModifier="true"
diff --git a/java/res/xml-xlarge/kbd_phone_symbols.xml b/java/res/xml-xlarge/kbd_phone_symbols.xml
index fea550414..9ba60ed85 100644
--- a/java/res/xml-xlarge/kbd_phone_symbols.xml
+++ b/java/res/xml-xlarge/kbd_phone_symbols.xml
@@ -73,7 +73,7 @@
</Row>
<Row>
<Key
- latin:codes="@integer/key_switch_alpha_symbol"
+ latin:codes="@integer/key_shift"
latin:keyLabel="@string/label_more_key"
latin:keyLabelOption="fontNormal|alignLeft|alignBottom"
latin:isModifier="true"
diff --git a/java/res/xml/kbd_qwerty_black_symbol.xml b/java/res/xml/kbd_qwerty_black_symbol.xml
index 840db9c5a..fe6b3a611 100644
--- a/java/res/xml/kbd_qwerty_black_symbol.xml
+++ b/java/res/xml/kbd_qwerty_black_symbol.xml
@@ -44,7 +44,7 @@
<default>
<Key
latin:codes="@integer/key_switch_alpha_symbol"
- latin:keyLabel="@string/label_symbol_key"
+ latin:keyLabel="@string/label_to_symbol_key"
latin:keyWidth="20%p"
latin:isModifier="true"
latin:keyEdgeFlags="left" />
@@ -73,7 +73,7 @@
<default>
<Key
latin:codes="@integer/key_switch_alpha_symbol"
- latin:keyLabel="@string/label_symbol_key"
+ latin:keyLabel="@string/label_to_symbol_key"
latin:keyWidth="15%p"
latin:isModifier="true"
latin:keyEdgeFlags="left" />
diff --git a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java
index f1f8dc27d..790f86138 100644
--- a/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java
+++ b/java/src/com/android/inputmethod/latin/KeyboardSwitcher.java
@@ -142,9 +142,18 @@ public class KeyboardSwitcher implements SharedPreferences.OnSharedPreferenceCha
final boolean voiceKeyEnabled = mVoiceKeyEnabled;
final boolean hasVoiceKey = voiceKeyEnabled && !mVoiceButtonOnPrimary;
final int imeOptions = mImeOptions;
- mSymbolsId = new KeyboardId(locale, orientation, mode, KBD_SYMBOLS,
+ // Note: This comment is only applied for phone number keyboard layout.
+ // On non-xlarge device, "@integer/key_switch_alpha_symbol" key code is used to switch
+ // between "phone keyboard" and "phone symbols keyboard". But on xlarge device,
+ // "@integer/key_shift" key code is used for that purpose in order to properly display
+ // "more" and "locked more" key labels. To achieve these behavior, we should initialize
+ // mSymbolsId and mSymbolsShiftedId to "phone keyboard" and "phone symbols keyboard"
+ // respectively here for xlarge device's layout switching.
+ mSymbolsId = new KeyboardId(locale, orientation, mode,
+ mode == MODE_PHONE ? KBD_PHONE : KBD_SYMBOLS,
colorScheme, hasSettingsKey, voiceKeyEnabled, hasVoiceKey, imeOptions, true);
- mSymbolsShiftedId = new KeyboardId(locale, orientation, mode, KBD_SYMBOLS_SHIFT,
+ mSymbolsShiftedId = new KeyboardId(locale, orientation, mode,
+ mode == MODE_PHONE ? KBD_PHONE_SYMBOLS : KBD_SYMBOLS_SHIFT,
colorScheme, hasSettingsKey, voiceKeyEnabled, hasVoiceKey, imeOptions, true);
}