summaryrefslogtreecommitdiff
path: root/core/java/android
diff options
context:
space:
mode:
Diffstat (limited to 'core/java/android')
-rw-r--r--core/java/android/app/SearchDialog.java5
-rw-r--r--core/java/android/app/SearchManager.java9
2 files changed, 13 insertions, 1 deletions
diff --git a/core/java/android/app/SearchDialog.java b/core/java/android/app/SearchDialog.java
index 3e426f5af78b..bf9b021eaced 100644
--- a/core/java/android/app/SearchDialog.java
+++ b/core/java/android/app/SearchDialog.java
@@ -668,7 +668,10 @@ public class SearchDialog extends Dialog implements OnItemClickListener, OnItemS
// The user changed the query, remember it.
mUserQuery = s == null ? "" : s.toString();
}
- updateVoiceButton(mSearchAutoComplete.isEmpty());
+ // Always want to show the microphone if the context is voice.
+ updateVoiceButton(mSearchAutoComplete.isEmpty()
+ || (mAppSearchData != null && mAppSearchData.getBoolean(
+ SearchManager.CONTEXT_IS_VOICE)));
}
public void afterTextChanged(Editable s) {
diff --git a/core/java/android/app/SearchManager.java b/core/java/android/app/SearchManager.java
index 0ed572a77d56..625b12072428 100644
--- a/core/java/android/app/SearchManager.java
+++ b/core/java/android/app/SearchManager.java
@@ -1544,6 +1544,15 @@ public class SearchManager
public final static String INTENT_ACTION_NONE = "android.search.action.ZILCH";
/**
+ * This means that context is voice, and therefore the SearchDialog should
+ * continue showing the microphone until the user indicates that he/she does
+ * not want to re-speak (e.g. by typing).
+ *
+ * @hide
+ */
+ public final static String CONTEXT_IS_VOICE = "android.search.CONTEXT_IS_VOICE";
+
+ /**
* Reference to the shared system search service.
*/
private static ISearchManager mService;