diff options
author | Leon Scroggins III <scroggo@google.com> | 2010-09-14 12:57:11 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2010-09-14 12:57:11 -0700 |
commit | 0ba7b925618a9e6e7e6f601119b9849527d9ee39 (patch) | |
tree | a080c8c6564e1db4a648baa0b5cf0c51c43c7a66 | |
parent | 6ac51e2b2defbc33834ec92d8a3e7c904f20811e (diff) | |
parent | 680ee91f725ac91a37791a4c57c7810c33e76e38 (diff) | |
download | packages_apps_Browser-0ba7b925618a9e6e7e6f601119b9849527d9ee39.zip packages_apps_Browser-0ba7b925618a9e6e7e6f601119b9849527d9ee39.tar.gz packages_apps_Browser-0ba7b925618a9e6e7e6f601119b9849527d9ee39.tar.bz2 |
am 680ee91f: am 95d9bfd1: Clear voice search mode when changing search engines.
Merge commit '680ee91f725ac91a37791a4c57c7810c33e76e38' into gingerbread-plus-aosp
* commit '680ee91f725ac91a37791a4c57c7810c33e76e38':
Clear voice search mode when changing search engines.
-rw-r--r-- | src/com/android/browser/BrowserSettings.java | 8 | ||||
-rw-r--r-- | src/com/android/browser/Tab.java | 16 |
2 files changed, 20 insertions, 4 deletions
diff --git a/src/com/android/browser/BrowserSettings.java b/src/com/android/browser/BrowserSettings.java index 73b648b..58b66ee 100644 --- a/src/com/android/browser/BrowserSettings.java +++ b/src/com/android/browser/BrowserSettings.java @@ -317,6 +317,14 @@ class BrowserSettings extends Observable { String searchEngineName = p.getString(PREF_SEARCH_ENGINE, null); if (searchEngine == null || !searchEngine.getName().equals(searchEngineName)) { if (searchEngine != null) { + if (searchEngine.supportsVoiceSearch()) { + // One or more tabs could have been in voice search mode. + // Clear it, since the new SearchEngine may not support + // it, or may handle it differently. + for (int i = 0; i < mTabControl.getTabCount(); i++) { + mTabControl.getTab(i).revertVoiceSearchMode(); + } + } searchEngine.close(); } searchEngine = SearchEngines.get(ctx, searchEngineName); diff --git a/src/com/android/browser/Tab.java b/src/com/android/browser/Tab.java index 7f9611d..7019c8a 100644 --- a/src/com/android/browser/Tab.java +++ b/src/com/android/browser/Tab.java @@ -164,6 +164,17 @@ class Tab { */ private VoiceSearchData mVoiceSearchData; /** + * Remove voice search mode from this tab. + */ + public void revertVoiceSearchMode() { + if (mVoiceSearchData != null) { + mVoiceSearchData = null; + if (mInForeground) { + mActivity.revertVoiceTitleBar(); + } + } + } + /** * Return whether the tab is in voice search mode. */ public boolean isInVoiceSearchMode() { @@ -456,10 +467,7 @@ class Tab { i.putExtra(LoggingEvents.EXTRA_FLUSH, true); mActivity.sendBroadcast(i); } - mVoiceSearchData = null; - if (mInForeground) { - mActivity.revertVoiceTitleBar(); - } + revertVoiceSearchMode(); } // We've started to load a new page. If there was a pending message |