Move long press shift handling from PointerTracker to KeyboardState
This change also
* Rename phone shift keyboard to phone symbols keyboard.
Use CODE_SWITCH_ALPHA_SYMBOL code to switch between phone and phone symbols keyboard.
* Remove phone symbols keyboard from tablet.
* Introduces enableLongPress flag of Key.keyActionFlags attribute.
* Remove clumsy long press code from PointerTracker.
* Remove CODE_CAPSLOCK handling from LatinIME.
* Make KeyboardSwitcher to invoke haptic and audio feedback.
Change-Id: I00e1f697a10ab5112aec75e36853b96246ff5054
diff --git a/java/res/xml/kbd_phone_shift.xml b/java/res/xml/kbd_phone_symbols.xml
similarity index 93%
rename from java/res/xml/kbd_phone_shift.xml
rename to java/res/xml/kbd_phone_symbols.xml
index 104f33f..7f59a85 100644
--- a/java/res/xml/kbd_phone_shift.xml
+++ b/java/res/xml/kbd_phone_symbols.xml
@@ -23,5 +23,5 @@
latin:keyWidth="26.67%p"
>
<include
- latin:keyboardLayout="@xml/rows_phone_shift" />
+ latin:keyboardLayout="@xml/rows_phone_symbols" />
</Keyboard>
diff --git a/java/res/xml/key_styles_common.xml b/java/res/xml/key_styles_common.xml
index 8d01e0f..14ee19e 100644
--- a/java/res/xml/key_styles_common.xml
+++ b/java/res/xml/key_styles_common.xml
@@ -180,7 +180,7 @@
<key-style
latin:styleName="spaceKeyStyle"
latin:code="@integer/key_space"
- latin:keyActionFlags="noKeyPreview"
+ latin:keyActionFlags="noKeyPreview|enableLongPress"
latin:backgroundType="functional" />
<key-style
latin:styleName="shortcutKeyStyle"
diff --git a/java/res/xml/key_styles_number.xml b/java/res/xml/key_styles_number.xml
index 003165d..7307a1a 100644
--- a/java/res/xml/key_styles_number.xml
+++ b/java/res/xml/key_styles_number.xml
@@ -45,6 +45,7 @@
latin:styleName="num0KeyStyle"
latin:code="48"
latin:keyLabel="0 +"
+ latin:keyActionFlags="enableLongPress"
latin:parentStyle="numberKeyStyle" />
<key-style
latin:styleName="num1KeyStyle"
@@ -95,14 +96,15 @@
latin:code="42"
latin:keyLabel="\uff0a"
latin:parentStyle="numKeyStyle" />
+ <!-- Only for non-tablet device -->
<key-style
- latin:styleName="numSwitchToAltKeyStyle"
- latin:code="@integer/key_shift"
+ latin:styleName="numPhoneToSymbolKeyStyle"
+ latin:code="@integer/key_switch_alpha_symbol"
latin:keyLabel="@string/label_to_phone_symbols_key"
latin:parentStyle="numModeKeyStyle" />
<key-style
- latin:styleName="numSwitchToNumericKeyStyle"
- latin:code="@integer/key_shift"
+ latin:styleName="numPhoneToNumericKeyStyle"
+ latin:code="@integer/key_switch_alpha_symbol"
latin:keyLabel="@string/label_to_phone_numeric_key"
latin:parentStyle="numModeKeyStyle" />
<key-style
@@ -125,5 +127,6 @@
latin:styleName="numSpaceKeyStyle"
latin:code="@integer/key_space"
latin:keyIcon="iconSpaceKeyForNumberLayout"
+ latin:keyActionFlags="enableLongPress"
latin:parentStyle="numKeyBaseStyle" />
</merge>
diff --git a/java/res/xml/keyboard_set.xml b/java/res/xml/keyboard_set.xml
index ebdd990..1398b13 100644
--- a/java/res/xml/keyboard_set.xml
+++ b/java/res/xml/keyboard_set.xml
@@ -34,8 +34,8 @@
latin:elementName="phone"
latin:elementKeyboard="@xml/kbd_phone" />
<Element
- latin:elementName="phoneShifted"
- latin:elementKeyboard="@xml/kbd_phone_shift" />
+ latin:elementName="phoneSymbols"
+ latin:elementKeyboard="@xml/kbd_phone_symbols" />
<Element
latin:elementName="number"
latin:elementKeyboard="@xml/kbd_number" />
diff --git a/java/res/xml/rows_phone.xml b/java/res/xml/rows_phone.xml
index 94d0f72..18e4c9d 100644
--- a/java/res/xml/rows_phone.xml
+++ b/java/res/xml/rows_phone.xml
@@ -62,7 +62,7 @@
</Row>
<Row>
<Key
- latin:keyStyle="numSwitchToAltKeyStyle" />
+ latin:keyStyle="numPhoneToSymbolKeyStyle" />
<Key
latin:keyStyle="num0KeyStyle" />
<Key
diff --git a/java/res/xml/rows_phone_shift.xml b/java/res/xml/rows_phone_symbols.xml
similarity index 97%
rename from java/res/xml/rows_phone_shift.xml
rename to java/res/xml/rows_phone_symbols.xml
index 1005206..dfa1349 100644
--- a/java/res/xml/rows_phone_shift.xml
+++ b/java/res/xml/rows_phone_symbols.xml
@@ -71,7 +71,7 @@
</Row>
<Row>
<Key
- latin:keyStyle="numSwitchToNumericKeyStyle" />
+ latin:keyStyle="numPhoneToNumericKeyStyle" />
<Key
latin:keyLabel="+"
latin:keyStyle="numKeyStyle" />