diff options
-rw-r--r-- | res/drawable-land/spinner_dropdown_background_down.9.png | bin | 0 -> 456 bytes | |||
-rw-r--r-- | res/drawable-land/spinner_dropdown_background_up.9.png | bin | 0 -> 415 bytes | |||
-rw-r--r-- | res/drawable/spinner_dropdown_background.xml | 22 | ||||
-rw-r--r-- | res/drawable/spinner_dropdown_background_down.9.png | bin | 0 -> 446 bytes | |||
-rw-r--r-- | res/drawable/spinner_dropdown_background_up.9.png | bin | 0 -> 421 bytes | |||
-rw-r--r-- | res/layout/widget_search.xml | 2 | ||||
-rw-r--r-- | res/values/dimens.xml | 19 | ||||
-rw-r--r-- | src/com/android/launcher/Search.java | 27 |
8 files changed, 70 insertions, 0 deletions
diff --git a/res/drawable-land/spinner_dropdown_background_down.9.png b/res/drawable-land/spinner_dropdown_background_down.9.png Binary files differnew file mode 100644 index 000000000..bb64b7817 --- /dev/null +++ b/res/drawable-land/spinner_dropdown_background_down.9.png diff --git a/res/drawable-land/spinner_dropdown_background_up.9.png b/res/drawable-land/spinner_dropdown_background_up.9.png Binary files differnew file mode 100644 index 000000000..c0e2a6653 --- /dev/null +++ b/res/drawable-land/spinner_dropdown_background_up.9.png diff --git a/res/drawable/spinner_dropdown_background.xml b/res/drawable/spinner_dropdown_background.xml new file mode 100644 index 000000000..9c37286a2 --- /dev/null +++ b/res/drawable/spinner_dropdown_background.xml @@ -0,0 +1,22 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2008 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<selector xmlns:android="http://schemas.android.com/apk/res/android"> + <item android:state_above_anchor="true" + android:drawable="@drawable/spinner_dropdown_background_up" /> + <item android:drawable="@drawable/spinner_dropdown_background_down" /> +</selector> + diff --git a/res/drawable/spinner_dropdown_background_down.9.png b/res/drawable/spinner_dropdown_background_down.9.png Binary files differnew file mode 100644 index 000000000..9cb555685 --- /dev/null +++ b/res/drawable/spinner_dropdown_background_down.9.png diff --git a/res/drawable/spinner_dropdown_background_up.9.png b/res/drawable/spinner_dropdown_background_up.9.png Binary files differnew file mode 100644 index 000000000..5c93f78ff --- /dev/null +++ b/res/drawable/spinner_dropdown_background_up.9.png diff --git a/res/layout/widget_search.xml b/res/layout/widget_search.xml index f87d30f16..1db8488a9 100644 --- a/res/layout/widget_search.xml +++ b/res/layout/widget_search.xml @@ -42,6 +42,8 @@ android:inputType="textAutoComplete" android:imeOptions="actionSearch" android:lines="1" + android:dropDownWidth="fill_parent" + android:popupBackground="@drawable/spinner_dropdown_background" /> <ImageButton android:id="@+id/search_go_btn" diff --git a/res/values/dimens.xml b/res/values/dimens.xml new file mode 100644 index 000000000..4ae66864e --- /dev/null +++ b/res/values/dimens.xml @@ -0,0 +1,19 @@ +<?xml version="1.0" encoding="utf-8"?> +<!-- Copyright (C) 2009 The Android Open Source Project + + Licensed under the Apache License, Version 2.0 (the "License"); + you may not use this file except in compliance with the License. + You may obtain a copy of the License at + + http://www.apache.org/licenses/LICENSE-2.0 + + Unless required by applicable law or agreed to in writing, software + distributed under the License is distributed on an "AS IS" BASIS, + WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + See the License for the specific language governing permissions and + limitations under the License. +--> + +<resources> + <dimen name="search_widget_inset">19dip</dimen> +</resources> diff --git a/src/com/android/launcher/Search.java b/src/com/android/launcher/Search.java index 97dcd980b..71ab7ef44 100644 --- a/src/com/android/launcher/Search.java +++ b/src/com/android/launcher/Search.java @@ -329,6 +329,33 @@ public class Search extends LinearLayout implements OnClickListener, OnKeyListen } /** + * Cache of popup padding value after read from {@link Resources}. + */ + private static float mPaddingInset = -1; + + /** + * When our size is changed, pass down adjusted width and offset values to + * correctly center the {@link AutoCompleteTextView} popup and include our + * padding. + */ + @Override + protected void onLayout(boolean changed, int left, int top, int right, int bottom) { + super.onLayout(changed, left, top, right, bottom); + if (changed) { + if (mPaddingInset == -1) { + mPaddingInset = getResources().getDimension(R.dimen.search_widget_inset); + } + + // Fill entire width of widget, minus padding inset + float paddedWidth = getWidth() - (mPaddingInset * 2); + float paddedOffset = -(mSearchText.getLeft() - mPaddingInset); + + mSearchText.setDropDownWidth((int) paddedWidth); + mSearchText.setDropDownHorizontalOffset((int) paddedOffset); + } + } + + /** * Read the searchable info from the search manager */ private void configureSearchableInfo() { |