Implement popup suggestions pane

Bug: 5023981
Change-Id: Ie1d69131dbf884a3f6a2beb3ac3427e5437c1486
diff --git a/java/res/values/attrs.xml b/java/res/values/attrs.xml
index fdeca25..9d34268 100644
--- a/java/res/values/attrs.xml
+++ b/java/res/values/attrs.xml
@@ -27,6 +27,7 @@
         <attr name="miniKeyboardPanelStyle" format="reference" />
         <!-- Suggestions strip style -->
         <attr name="suggestionsStripBackgroundStyle" format="reference" />
+        <attr name="suggestionsPaneViewStyle" format="reference" />
         <attr name="suggestionBackgroundStyle" format="reference" />
         <attr name="suggestionPreviewBackgroundStyle" format="reference" />
         <attr name="candidateViewStyle" format="reference" />
diff --git a/java/res/values/dimens.xml b/java/res/values/dimens.xml
index 2c4b35e..b7609a4 100644
--- a/java/res/values/dimens.xml
+++ b/java/res/values/dimens.xml
@@ -77,9 +77,11 @@
     <dimen name="key_preview_offset_ics">0.05in</dimen>
 
     <dimen name="candidate_strip_height">40dip</dimen>
-    <!-- candidate_strip_minimum_height =
-         key_preview_height_holo - key_preview_offset_holo + alpha -->
-    <dimen name="candidate_strip_minimum_height">100sp</dimen>
+    <dimen name="more_suggestions_key_horizontal_padding">12dip</dimen>
+    <dimen name="more_suggestions_row_height">40dip</dimen>
+    <dimen name="more_suggestions_slide_allowance">0.2in</dimen>
+    <fraction name="more_suggestions_info_ratio">12%</fraction>
+    <dimen name="candidate_strip_minimum_height">200sp</dimen>
     <dimen name="candidate_strip_fading_edge_length">63dip</dimen>
     <dimen name="candidate_strip_padding">0dip</dimen>
     <dimen name="candidate_min_width">44dip</dimen>
diff --git a/java/res/values/styles.xml b/java/res/values/styles.xml
index ddc0634..4cc2a53 100644
--- a/java/res/values/styles.xml
+++ b/java/res/values/styles.xml
@@ -79,6 +79,11 @@
         <item name="android:paddingLeft">@dimen/mini_keyboard_horizontal_edges_padding</item>
         <item name="android:paddingRight">@dimen/mini_keyboard_horizontal_edges_padding</item>
     </style>
+    <style
+        name="SuggestionsPaneViewStyle"
+        parent="MiniKeyboardView"
+    >
+    </style>
     <style name="SuggestionsStripBackgroundStyle">
         <item name="android:background">@drawable/keyboard_suggest_strip</item>
     </style>
@@ -236,6 +241,11 @@
     >
     </style>
     <style
+        name="SuggestionsPaneViewStyle.IceCreamSandwich"
+        parent="MiniKeyboardView.IceCreamSandwich"
+    >
+    </style>
+    <style
         name="CandidateViewStyle.IceCreamSandwich"
         parent="SuggestionsStripBackgroundStyle.IceCreamSandwich"
     >
diff --git a/java/res/values/themes-basic-highcontrast.xml b/java/res/values/themes-basic-highcontrast.xml
index 17c06a2..51bf2f1 100644
--- a/java/res/values/themes-basic-highcontrast.xml
+++ b/java/res/values/themes-basic-highcontrast.xml
@@ -22,6 +22,7 @@
         <item name="miniKeyboardViewStyle">@style/MiniKeyboardView</item>
         <item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
         <item name="suggestionsStripBackgroundStyle">@style/SuggestionsStripBackgroundStyle</item>
+        <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item>
         <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item>
         <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item>
         <item name="candidateViewStyle">@style/CandidateViewStyle</item>
diff --git a/java/res/values/themes-basic.xml b/java/res/values/themes-basic.xml
index 23c71bd..7288dba 100644
--- a/java/res/values/themes-basic.xml
+++ b/java/res/values/themes-basic.xml
@@ -22,6 +22,7 @@
         <item name="miniKeyboardViewStyle">@style/MiniKeyboardView</item>
         <item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
         <item name="suggestionsStripBackgroundStyle">@style/SuggestionsStripBackgroundStyle</item>
+        <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item>
         <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item>
         <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item>
         <item name="candidateViewStyle">@style/CandidateViewStyle</item>
diff --git a/java/res/values/themes-gingerbread.xml b/java/res/values/themes-gingerbread.xml
index 1e3419f..5b62378 100644
--- a/java/res/values/themes-gingerbread.xml
+++ b/java/res/values/themes-gingerbread.xml
@@ -22,6 +22,7 @@
         <item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Gingerbread</item>
         <item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
         <item name="suggestionsStripBackgroundStyle">@style/SuggestionsStripBackgroundStyle</item>
+        <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item>
         <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item>
         <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item>
         <item name="candidateViewStyle">@style/CandidateViewStyle</item>
diff --git a/java/res/values/themes-ics.xml b/java/res/values/themes-ics.xml
index 7fa879c..597d87b 100644
--- a/java/res/values/themes-ics.xml
+++ b/java/res/values/themes-ics.xml
@@ -22,6 +22,7 @@
         <item name="miniKeyboardViewStyle">@style/MiniKeyboardView.IceCreamSandwich</item>
         <item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle.IceCreamSandwich</item>
         <item name="suggestionsStripBackgroundStyle">@style/SuggestionsStripBackgroundStyle.IceCreamSandwich</item>
+        <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle.IceCreamSandwich</item>
         <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle.IceCreamSandwich</item>
         <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle.IceCreamSandwich</item>
         <item name="candidateViewStyle">@style/CandidateViewStyle.IceCreamSandwich</item>
diff --git a/java/res/values/themes-stone-bold.xml b/java/res/values/themes-stone-bold.xml
index fa2ee2d..ff7107d 100644
--- a/java/res/values/themes-stone-bold.xml
+++ b/java/res/values/themes-stone-bold.xml
@@ -22,7 +22,8 @@
         <item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Stone</item>
         <item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
         <item name="suggestionsStripBackgroundStyle">@style/SuggestionsStripBackgroundStyle</item>
-        <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item>
+        <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item>
+            <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item>
         <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item>
         <item name="candidateViewStyle">@style/CandidateViewStyle</item>
     </style>
diff --git a/java/res/values/themes-stone.xml b/java/res/values/themes-stone.xml
index 494bae6..35390d1 100644
--- a/java/res/values/themes-stone.xml
+++ b/java/res/values/themes-stone.xml
@@ -22,6 +22,7 @@
         <item name="miniKeyboardViewStyle">@style/MiniKeyboardView.Stone</item>
         <item name="miniKeyboardPanelStyle">@style/MiniKeyboardPanelStyle</item>
         <item name="suggestionsStripBackgroundStyle">@style/SuggestionsStripBackgroundStyle</item>
+        <item name="suggestionsPaneViewStyle">@style/SuggestionsPaneViewStyle</item>
         <item name="suggestionBackgroundStyle">@style/SuggestionBackgroundStyle</item>
         <item name="suggestionPreviewBackgroundStyle">@style/SuggestionPreviewBackgroundStyle</item>
         <item name="candidateViewStyle">@style/CandidateViewStyle</item>