Add debug settings for keypress popup animations

Bug: 12928125
Change-Id: I49faab754c7d1dcf4a791dfc535d3a78b62ce67a
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index 5bedd4a..b513d96 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -111,10 +111,6 @@
         <attr name="keyPreviewOffset" format="dimension" />
         <!-- Height of the key press feedback popup. -->
         <attr name="keyPreviewHeight" format="dimension" />
-        <!-- Duration of key preview popup zoom in animation in millisecond -->
-        <attr name="keyPreviewZoomInDuration" format="integer" />
-        <!-- Duration of key preview popup zoom out animation in millisecond -->
-        <attr name="keyPreviewZoomOutDuration" format="integer" />
         <!-- Delay after key releasing and key press feedback dismissing in millisecond -->
         <attr name="keyPreviewLingerTimeout" format="integer" />
         <!-- Layout resource for more keys keyboard -->
diff --git a/java/res/values/config-common.xml b/java/res/values/config-common.xml
index c920152..1b44bad 100644
--- a/java/res/values/config-common.xml
+++ b/java/res/values/config-common.xml
@@ -35,8 +35,10 @@
 
     <integer name="config_ignore_alt_code_key_timeout">350</integer>
 
-    <integer name="config_key_preview_zoom_in_duration">35</integer>
-    <integer name="config_key_preview_zoom_out_duration">40</integer>
+    <integer name="config_key_preview_show_up_duration">35</integer>
+    <integer name="config_key_preview_dismiss_duration">40</integer>
+    <fraction name="config_key_preview_show_up_start_scale">70%</fraction>
+    <fraction name="config_key_preview_dismiss_end_scale">70%</fraction>
     <integer name="config_key_preview_linger_timeout">70</integer>
     <!-- Suppress showing key preview duration after batch input in millisecond -->
     <integer name="config_suppress_key_preview_after_batch_input_duration">1000</integer>
diff --git a/java/res/values/strings.xml b/java/res/values/strings.xml
index 70f4c18..b762af3 100644
--- a/java/res/values/strings.xml
+++ b/java/res/values/strings.xml
@@ -486,6 +486,14 @@
     <string name="prefs_keypress_vibration_duration_settings">Keypress vibration duration</string>
     <!-- Title of the settings for keypress sound volume [CHAR LIMIT=35] -->
     <string name="prefs_keypress_sound_volume_settings">Keypress sound volume</string>
+    <!-- Title of the settings for key popup show up animation duration (in milliseconds) [CHAR LIMIT=35] -->
+    <string name="prefs_key_popup_show_up_duration_settings" translatable="false">Key popup show up duration</string>
+    <!-- Title of the settings for key popup dismiss animation duration (in milliseconds) [CHAR LIMIT=35] -->
+    <string name="prefs_key_popup_dismiss_duration_settings" translatable="false">Key popup dismiss duration</string>
+    <!-- Title of the settings for key popup show up animation start scale (in percentile) [CHAR LIMIT=35] -->
+    <string name="prefs_key_popup_show_up_start_scale_settings" translatable="false">Key popup show up start scale</string>
+    <!-- Title of the settings for key popup dismiss animation end scale (in percentile) [CHAR LIMIT=35] -->
+    <string name="prefs_key_popup_dismiss_end_scale_settings" translatable="false">Key popup dismiss end scale</string>
     <!-- Title of the settings for reading an external dictionary file -->
     <string name="prefs_read_external_dictionary">Read external dictionary file</string>
     <!-- Title of the settings for using only personalization dictionary -->
diff --git a/java/res/values/themes-common.xml b/java/res/values/themes-common.xml
index 3bfd73a..fc96d19 100644
--- a/java/res/values/themes-common.xml
+++ b/java/res/values/themes-common.xml
@@ -77,8 +77,6 @@
         <item name="ignoreAltCodeKeyTimeout">@integer/config_ignore_alt_code_key_timeout</item>
         <item name="keyPreviewLayout">@layout/key_preview</item>
         <item name="keyPreviewHeight">@dimen/config_key_preview_height</item>
-        <item name="keyPreviewZoomInDuration">@integer/config_key_preview_zoom_in_duration</item>
-        <item name="keyPreviewZoomOutDuration">@integer/config_key_preview_zoom_out_duration</item>
         <item name="keyPreviewLingerTimeout">@integer/config_key_preview_linger_timeout</item>
         <item name="moreKeysKeyboardLayout">@layout/more_keys_keyboard</item>
         <item name="showMoreKeysKeyboardAtTouchedPoint">@bool/config_show_more_keys_keyboard_at_touched_point</item>
diff --git a/java/res/xml/prefs_for_debug.xml b/java/res/xml/prefs_for_debug.xml
index 899e2b8..81a5d98 100644
--- a/java/res/xml/prefs_for_debug.xml
+++ b/java/res/xml/prefs_for_debug.xml
@@ -14,68 +14,75 @@
      limitations under the License.
 -->
 
-<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
-        android:title="@string/prefs_debug_mode"
-        android:key="english_ime_debug_settings">
-
+<PreferenceScreen
+    xmlns:android="http://schemas.android.com/apk/res/android"
+    xmlns:latin="http://schemas.android.com/apk/res/com.android.inputmethod.latin"
+    android:title="@string/prefs_debug_mode"
+    android:key="english_ime_debug_settings"
+>
     <CheckBoxPreference
-            android:key="enable_logging"
-            android:title="@string/prefs_enable_log"
-            android:summary="@string/prefs_description_log"
-            android:persistent="true"
-            android:defaultValue="false" />
-
+        android:key="enable_logging"
+        android:title="@string/prefs_enable_log"
+        android:summary="@string/prefs_description_log"
+        android:persistent="true"
+        android:defaultValue="false" />
     <ListPreference
-            android:key="pref_keyboard_layout_20110916"
-            android:title="@string/keyboard_layout"
-            android:summary="%s"
-            android:persistent="true"
-            android:entryValues="@array/keyboard_layout_modes_values"
-            android:entries="@array/keyboard_layout_modes"
-            android:defaultValue="@string/config_default_keyboard_theme_index" />
-
+        android:key="pref_keyboard_layout_20110916"
+        android:title="@string/keyboard_layout"
+        android:summary="%s"
+        android:persistent="true"
+        android:entryValues="@array/keyboard_layout_modes_values"
+        android:entries="@array/keyboard_layout_modes"
+        android:defaultValue="@string/config_default_keyboard_theme_index" />
     <CheckBoxPreference
-            android:key="debug_mode"
-            android:title="@string/prefs_debug_mode"
-            android:persistent="true"
-            android:defaultValue="false" />
-
+        android:key="debug_mode"
+        android:title="@string/prefs_debug_mode"
+        android:persistent="true"
+        android:defaultValue="false" />
     <CheckBoxPreference
-            android:key="force_non_distinct_multitouch"
-            android:title="@string/prefs_force_non_distinct_multitouch"
-            android:persistent="true"
-            android:defaultValue="false" />
-
+        android:key="force_non_distinct_multitouch"
+        android:title="@string/prefs_force_non_distinct_multitouch"
+        android:persistent="true"
+        android:defaultValue="false" />
     <CheckBoxPreference
-            android:key="usability_study_mode"
-            android:title="@string/prefs_usability_study_mode"
-            android:persistent="true"
-            android:defaultValue="false" />
-
+        android:key="usability_study_mode"
+        android:title="@string/prefs_usability_study_mode"
+        android:persistent="true"
+        android:defaultValue="false" />
+    <com.android.inputmethod.latin.settings.SeekBarDialogPreference
+        android:key="pref_key_preview_show_up_start_scale"
+        android:title="@string/prefs_key_popup_show_up_start_scale_settings"
+        latin:maxValue="100" /> <!-- percent -->
+    <com.android.inputmethod.latin.settings.SeekBarDialogPreference
+        android:key="pref_key_preview_dismiss_end_scale"
+        android:title="@string/prefs_key_popup_dismiss_end_scale_settings"
+        latin:maxValue="100" /> <!-- percent -->
+    <com.android.inputmethod.latin.settings.SeekBarDialogPreference
+        android:key="pref_key_preview_show_up_duration"
+        android:title="@string/prefs_key_popup_show_up_duration_settings"
+        latin:maxValue="100" /> <!-- milliseconds -->
+    <com.android.inputmethod.latin.settings.SeekBarDialogPreference
+        android:key="pref_key_preview_dismiss_duration"
+        android:title="@string/prefs_key_popup_dismiss_duration_settings"
+        latin:maxValue="100" /> <!-- milliseconds -->
     <CheckBoxPreference
         android:defaultValue="false"
         android:key="use_only_personalization_dictionary_for_debug"
         android:persistent="true"
         android:title="@string/prefs_use_only_personalization_dictionary" />
-
     <PreferenceScreen
         android:key="read_external_dictionary"
         android:title="@string/prefs_read_external_dictionary" />
-
     <PreferenceScreen
         android:key="dump_contacts_dict"
         android:title="@string/prefs_dump_contacts_dict" />
-
     <PreferenceScreen
         android:key="dump_user_dict"
         android:title="@string/prefs_dump_user_dict" />
-
     <PreferenceScreen
         android:key="dump_user_history_dict"
         android:title="@string/prefs_dump_user_history_dict" />
-
     <PreferenceScreen
         android:key="dump_personalization_dict"
         android:title="@string/prefs_dump_personalization_dict" />
-
 </PreferenceScreen>