Fix material style errors in suggestion popup window.
This CL addresses the material style errors from UX team.
- Corners should have a radius of 2dp.
To use the same way with floating toolbar, make the popup window transparent and
set floatingToolbarPopupBackgroundDrawable as the layout background. By this
change, TextSuggestionsPopupWindow style is no longer necessary, removed it.
- Background color for both sections should be #FFFFFF.
It turned out that the window default background is not white. By addressing
above item, this issue is fixed too.
- Divider line alpha=.12
This is fixed by using attr/listDivider instead of attr/dividerHorizontal.
- Remove 8dp padding below last suggestion
Removed 8dip paddingBottom from ListView.
Bug: 15347319
Change-Id: I579c0cc5b7f0dd337bff54af77828b8af25b13d2
diff --git a/core/java/android/widget/Editor.java b/core/java/android/widget/Editor.java
index 1576877..df5af25 100644
--- a/core/java/android/widget/Editor.java
+++ b/core/java/android/widget/Editor.java
@@ -38,6 +38,7 @@
import android.graphics.Path;
import android.graphics.Rect;
import android.graphics.RectF;
+import android.graphics.drawable.ColorDrawable;
import android.graphics.drawable.Drawable;
import android.os.Bundle;
import android.os.Parcel;
@@ -3098,10 +3099,6 @@
private SuggestionSpan mMisspelledSpan;
private class CustomPopupWindow extends PopupWindow {
- public CustomPopupWindow(Context context, int defStyleAttr) {
- super(context, null, defStyleAttr);
- }
-
@Override
public void dismiss() {
if (!isShowing()) {
@@ -3126,9 +3123,9 @@
@Override
protected void createPopupWindow() {
- mPopupWindow = new CustomPopupWindow(mTextView.getContext(),
- com.android.internal.R.attr.textSuggestionsWindowStyle);
+ mPopupWindow = new CustomPopupWindow();
mPopupWindow.setInputMethodMode(PopupWindow.INPUT_METHOD_NOT_NEEDED);
+ mPopupWindow.setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT));
mPopupWindow.setFocusable(true);
mPopupWindow.setClippingEnabled(false);
}
diff --git a/core/res/res/layout/text_edit_suggestion_container.xml b/core/res/res/layout/text_edit_suggestion_container.xml
index 04eca8f..fe02d4e 100644
--- a/core/res/res/layout/text_edit_suggestion_container.xml
+++ b/core/res/res/layout/text_edit_suggestion_container.xml
@@ -16,6 +16,8 @@
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
+ android:background="@drawable/text_edit_suggestions_window"
+ android:dropDownSelector="@drawable/list_selector_background"
android:divider="@null">
<ListView
android:id="@+id/suggestionContainer"
diff --git a/core/res/res/layout/text_edit_suggestion_container_material.xml b/core/res/res/layout/text_edit_suggestion_container_material.xml
index d0e2467..62e315b4 100644
--- a/core/res/res/layout/text_edit_suggestion_container_material.xml
+++ b/core/res/res/layout/text_edit_suggestion_container_material.xml
@@ -14,17 +14,19 @@
limitations under the License.
-->
+<!-- Background of the popup window is the same as the one of the floating toolbar.
+ Use floating toolbar background style. -->
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
android:orientation="vertical"
- android:divider="?android:attr/dividerHorizontal"
+ android:background="?android:attr/floatingToolbarPopupBackgroundDrawable"
+ android:divider="?android:attr/listDivider"
android:showDividers="middle" >
<ListView
android:id="@+id/suggestionContainer"
android:layout_width="match_parent"
android:layout_height="wrap_content"
- android:background="@color/white"
android:paddingTop="8dip"
- android:paddingBottom="8dip"
+ android:paddingBottom="0dip"
android:divider="@null" />
<LinearLayout
android:layout_width="match_parent"
diff --git a/core/res/res/values/styles.xml b/core/res/res/values/styles.xml
index 937d83d..d5349b2 100644
--- a/core/res/res/values/styles.xml
+++ b/core/res/res/values/styles.xml
@@ -1199,13 +1199,6 @@
<item name="windowExitAnimation">@anim/fast_fade_out</item>
</style>
- <!-- Style for the popup window that contains text suggestions. -->
- <style name="Widget.TextSuggestionsPopupWindow">
- <item name="dropDownSelector">@drawable/list_selector_background</item>
- <item name="popupBackground">@drawable/text_edit_suggestions_window</item>
- <item name="dropDownWidth">wrap_content</item>
- </style>
-
<style name="Widget.ActionBar">
<item name="background">@drawable/action_bar_background</item>
<item name="displayOptions">useLogo|showHome|showTitle</item>
diff --git a/core/res/res/values/styles_device_defaults.xml b/core/res/res/values/styles_device_defaults.xml
index 23ac221..93a5264 100644
--- a/core/res/res/values/styles_device_defaults.xml
+++ b/core/res/res/values/styles_device_defaults.xml
@@ -113,7 +113,6 @@
<style name="Widget.DeviceDefault.Spinner.DropDown" parent="Widget.Material.Spinner.DropDown"/>
<style name="Widget.DeviceDefault.StackView" parent="Widget.Material.StackView"/>
<style name="Widget.DeviceDefault.TextSelectHandle" parent="Widget.Material.TextSelectHandle"/>
- <style name="Widget.DeviceDefault.TextSuggestionsPopupWindow" parent="Widget.Material.TextSuggestionsPopupWindow"/>
<style name="Widget.DeviceDefault.TextView.ListSeparator" parent="Widget.Material.TextView.ListSeparator"/>
<style name="Widget.DeviceDefault.TimePicker" parent="Widget.Material.TimePicker"/>
@@ -199,7 +198,6 @@
<style name="Widget.DeviceDefault.Light.Spinner.DropDown" parent="Widget.Material.Light.Spinner.DropDown"/>
<style name="Widget.DeviceDefault.Light.TextView.ListSeparator" parent="Widget.Material.Light.TextView.ListSeparator"/>
<style name="Widget.DeviceDefault.Light.TimePicker" parent="Widget.Material.Light.TimePicker"/>
- <style name="Widget.DeviceDefault.Light.TextSuggestionsPopupWindow" parent="Widget.Material.Light.TextSuggestionsPopupWindow"/>
<!-- Text Appearance Styles -->
<style name="TextAppearance.DeviceDefault" parent="TextAppearance.Material"/>
diff --git a/core/res/res/values/styles_holo.xml b/core/res/res/values/styles_holo.xml
index 3cd60df..6c69141 100644
--- a/core/res/res/values/styles_holo.xml
+++ b/core/res/res/values/styles_holo.xml
@@ -401,8 +401,6 @@
<style name="Widget.Holo.TextSelectHandle" parent="Widget.TextSelectHandle" />
- <style name="Widget.Holo.TextSuggestionsPopupWindow" parent="Widget.TextSuggestionsPopupWindow" />
-
<style name="Widget.Holo.AbsListView" parent="Widget.AbsListView" />
<style name="Widget.Holo.AutoCompleteTextView" parent="Widget.AutoCompleteTextView">
@@ -814,8 +812,6 @@
<style name="Widget.Holo.Light.TextSelectHandle" parent="Widget.TextSelectHandle" />
- <style name="Widget.Holo.Light.TextSuggestionsPopupWindow" parent="Widget.TextSuggestionsPopupWindow" />
-
<style name="Widget.Holo.Light.AbsListView" parent="Widget.AbsListView" />
<style name="Widget.Holo.Light.AutoCompleteTextView" parent="Widget.AutoCompleteTextView">
diff --git a/core/res/res/values/styles_material.xml b/core/res/res/values/styles_material.xml
index 3d5f6ab..fff17ad 100644
--- a/core/res/res/values/styles_material.xml
+++ b/core/res/res/values/styles_material.xml
@@ -570,7 +570,6 @@
<style name="Widget.Material.CheckedTextView" parent="Widget.CheckedTextView" />
<style name="Widget.Material.TextSelectHandle" parent="Widget.TextSelectHandle"/>
- <style name="Widget.Material.TextSuggestionsPopupWindow" parent="Widget.TextSuggestionsPopupWindow"/>
<style name="Widget.Material.AbsListView" parent="Widget.AbsListView"/>
<style name="Widget.Material.AutoCompleteTextView" parent="Widget.AutoCompleteTextView">
@@ -995,7 +994,6 @@
</style>
<style name="Widget.Material.SuggestionItem" parent="@android:style/TextAppearance.Material.Body1">
- <item name="background">@color/white</item>
<item name="alpha">.87</item>
<item name="textColor">@color/black</item>
<item name="drawablePadding">8dip</item>
@@ -1017,7 +1015,6 @@
</style>
<style name="Widget.Material.SuggestionButton" parent="@android:style/TextAppearance.Material.Button">
- <item name="background">@color/white</item>
<item name="alpha">.87</item>
<item name="textColor">#009688</item>
<item name="drawablePadding">8dip</item>
@@ -1061,7 +1058,6 @@
<style name="Widget.Material.Light.TextView.SpinnerItem" parent="Widget.Material.TextView.SpinnerItem"/>
<style name="Widget.Material.Light.CheckedTextView" parent="Widget.Material.CheckedTextView"/>
<style name="Widget.Material.Light.TextSelectHandle" parent="Widget.Material.TextSelectHandle"/>
- <style name="Widget.Material.Light.TextSuggestionsPopupWindow" parent="Widget.Material.TextSuggestionsPopupWindow"/>
<style name="Widget.Material.Light.AbsListView" parent="Widget.Material.AbsListView"/>
<style name="Widget.Material.Light.AutoCompleteTextView" parent="Widget.Material.AutoCompleteTextView" />
<style name="Widget.Material.Light.CompoundButton" parent="Widget.Material.CompoundButton"/>
diff --git a/core/res/res/values/themes_device_defaults.xml b/core/res/res/values/themes_device_defaults.xml
index def8659..dd8baa7 100644
--- a/core/res/res/values/themes_device_defaults.xml
+++ b/core/res/res/values/themes_device_defaults.xml
@@ -98,7 +98,6 @@
<!-- Text selection handle attributes -->
<item name="textSelectHandleWindowStyle">@style/Widget.DeviceDefault.TextSelectHandle</item>
- <item name="textSuggestionsWindowStyle">@style/Widget.DeviceDefault.TextSuggestionsPopupWindow</item>
<!-- Widget styles -->
<item name="absListViewStyle">@style/Widget.DeviceDefault.AbsListView</item>
@@ -350,7 +349,6 @@
<!-- Text selection handle attributes -->
<item name="textSelectHandleWindowStyle">@style/Widget.DeviceDefault.TextSelectHandle</item>
- <item name="textSuggestionsWindowStyle">@style/Widget.DeviceDefault.Light.TextSuggestionsPopupWindow</item>
<!-- Widget styles -->
<item name="absListViewStyle">@style/Widget.DeviceDefault.Light.AbsListView</item>
diff --git a/core/res/res/values/themes_holo.xml b/core/res/res/values/themes_holo.xml
index 4cbaacb..34c89fc 100644
--- a/core/res/res/values/themes_holo.xml
+++ b/core/res/res/values/themes_holo.xml
@@ -136,7 +136,6 @@
<item name="textEditSuggestionItemLayout">@layout/text_edit_suggestion_item</item>
<item name="textEditSuggestionContainerLayout">@layout/text_edit_suggestion_container</item>
<item name="textEditSuggestionHighlightStyle">@style/TextAppearance.Holo.SuggestionHighlight</item>
- <item name="textSuggestionsWindowStyle">@style/Widget.Holo.TextSuggestionsPopupWindow</item>
<!-- Button styles -->
<item name="buttonStyle">@style/Widget.Holo.Button</item>
@@ -590,7 +589,6 @@
<item name="textSelectHandleRight">@drawable/text_select_handle_right</item>
<item name="textSelectHandle">@drawable/text_select_handle_middle</item>
<item name="textSelectHandleWindowStyle">@style/Widget.Holo.TextSelectHandle</item>
- <item name="textSuggestionsWindowStyle">@style/Widget.Holo.Light.TextSuggestionsPopupWindow</item>
<item name="textCursorDrawable">@drawable/text_cursor_holo_light</item>
<!-- Widget styles -->
diff --git a/core/res/res/values/themes_material.xml b/core/res/res/values/themes_material.xml
index b011094..47892a3 100644
--- a/core/res/res/values/themes_material.xml
+++ b/core/res/res/values/themes_material.xml
@@ -223,7 +223,6 @@
<item name="textSelectHandleWindowStyle">@style/Widget.Material.TextSelectHandle</item>
<item name="textEditSuggestionItemLayout">@layout/text_edit_suggestion_item_material</item>
<item name="textEditSuggestionContainerLayout">@layout/text_edit_suggestion_container_material</item>
- <item name="textSuggestionsWindowStyle">@style/Widget.Material.TextSuggestionsPopupWindow</item>
<item name="textCursorDrawable">@drawable/text_cursor_material</item>
<!-- Widget styles -->
@@ -588,7 +587,6 @@
<item name="textEditSuggestionItemLayout">@layout/text_edit_suggestion_item_material</item>
<item name="textEditSuggestionContainerLayout">@layout/text_edit_suggestion_container_material</item>
<item name="textEditSuggestionHighlightStyle">@style/TextAppearance.Material.TextSuggestionHighlight</item>
- <item name="textSuggestionsWindowStyle">@style/Widget.Material.Light.TextSuggestionsPopupWindow</item>
<!-- Widget styles -->
<item name="absListViewStyle">@style/Widget.Material.Light.AbsListView</item>