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.
This commit is contained in:
Mike LeBeau
2009-05-23 01:19:36 -05:00
committed by The Android Open Source Project
parent 5753430f64
commit 8a86c79b5b
2 changed files with 23 additions and 1 deletions

View File

@@ -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();
}