summaryrefslogtreecommitdiffstats
path: root/core
diff options
context:
space:
mode:
authorMike LeBeau <mlebeau@android.com>2009-05-23 01:19:36 -0500
committerMike LeBeau <mlebeau@android.com>2009-05-23 01:19:36 -0500
commita97f4a117415fd877bc63d6c90a6775ca04eb3fe (patch)
tree063f0a1e0a998b7ce1fcad35b634ac6118f1cec1 /core
parentfea1a459aaebc5fd66b12520312ddbe09547f094 (diff)
downloadframeworks_base-a97f4a117415fd877bc63d6c90a6775ca04eb3fe.zip
frameworks_base-a97f4a117415fd877bc63d6c90a6775ca04eb3fe.tar.gz
frameworks_base-a97f4a117415fd877bc63d6c90a6775ca04eb3fe.tar.bz2
Remove dimmed background (and accompanying animation) for global
search, since we should never really see that background anyway, and I suspect the animation is using a significant amount of CPU.
Diffstat (limited to 'core')
-rw-r--r--core/java/android/app/SearchDialog.java18
-rw-r--r--core/res/res/values/themes.xml6
2 files changed, 23 insertions, 1 deletions
diff --git a/core/java/android/app/SearchDialog.java b/core/java/android/app/SearchDialog.java
index aaaf7bf..ff110c8 100644
--- a/core/java/android/app/SearchDialog.java
+++ b/core/java/android/app/SearchDialog.java
@@ -49,6 +49,7 @@ import android.text.TextUtils;
import android.text.TextWatcher;
import android.util.AttributeSet;
import android.util.Log;
+import android.view.ContextThemeWrapper;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.MotionEvent;
@@ -165,7 +166,7 @@ public class SearchDialog extends Dialog implements OnItemClickListener, OnItemS
* @param context Application Context we can use for system acess
*/
public SearchDialog(Context context) {
- super(context, com.android.internal.R.style.Theme_SearchBar);
+ super(context, com.android.internal.R.style.Theme_GlobalSearchBar);
}
/**
@@ -393,6 +394,21 @@ public class SearchDialog extends Dialog implements OnItemClickListener, OnItemS
getContext().getSystemService(Context.INPUT_METHOD_SERVICE);
inputManager.showSoftInputUnchecked(0, null);
}
+
+ // The Dialog uses a ContextThemeWrapper for the context; use this to change the
+ // theme out from underneath us, between the global search theme and the in-app
+ // search theme. They are identical except that the global search theme does not
+ // dim the background of the window (because global search is full screen so it's
+ // not needed and this should save a little bit of time on global search invocation).
+ Object context = getContext();
+ if (context instanceof ContextThemeWrapper) {
+ ContextThemeWrapper wrapper = (ContextThemeWrapper) context;
+ if (globalSearch) {
+ wrapper.setTheme(com.android.internal.R.style.Theme_GlobalSearchBar);
+ } else {
+ wrapper.setTheme(com.android.internal.R.style.Theme_SearchBar);
+ }
+ }
show();
}
diff --git a/core/res/res/values/themes.xml b/core/res/res/values/themes.xml
index 00dc6fa..1c87220 100644
--- a/core/res/res/values/themes.xml
+++ b/core/res/res/values/themes.xml
@@ -368,6 +368,12 @@
<item name="android:backgroundDimEnabled">true</item>
<item name="windowContentOverlay">@null</item>
</style>
+
+ <!-- Theme for the search input bar when doing global search. The only
+ difference from non-global search is that we do not dim the background. -->
+ <style name="Theme.GlobalSearchBar" parent="Theme.Panel">
+ <item name="windowContentOverlay">@null</item>
+ </style>
<!-- Menu Themes -->
<eat-comment />