Unify voice interactor and recognizer settings.
There is now one settings UI to select both the new
voice interactor and old voice recognizer.
There are still a few wonky things about this that won't
be resolved until we start requiring that all interactors
specify an associated recognizer service.
Change-Id: Ib702ff717fb28bcb244cb30e49577066ddc9f197
diff --git a/res/values/strings.xml b/res/values/strings.xml
index a16c791..bbce4e4 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -4061,24 +4061,28 @@
<string name="keyboard_settings_title">Android keyboard</string>
<!-- Title for the 'voice input' category of voice input/output settings -->
<string name="voice_category">Speech</string>
- <!-- Title for the voice interactor setting in voice input/output settings -->
- <string name="voice_interactor_title">Voice input</string>
- <!-- Title for the link to settings for the chosen voice interactor in voice input/output
- settings -->
- <string name="voice_interactor_settings_title">Voice input</string>
- <!-- Summary for the link to settings for the chosen voice interactor in voice input/output
- settings. Would say something like, e.g., "Settings for 'Google'". -->
- <string name="voice_interactor_settings_summary">Settings for
- \'<xliff:g id="interactor_name">%s</xliff:g>\'</string>
- <!-- Label to show for no voice interactor selector -->
- <string name="no_voice_interactor">None</string>
- <!-- Title for the voice recognizer setting in voice input/output settings -->
- <string name="recognizer_title">Voice recognizer</string>
- <!-- Title for the link to settings for the chosen voice recognizer in voice input/output settings -->
- <string name="recognizer_settings_title">Voice Search</string>
- <!-- Summary for the link to settings for the chosen voice recognizer in voice input/output settings.
- Would say something like, e.g., "Settings for 'Google'". -->
- <string name="recognizer_settings_summary">Settings for \'<xliff:g id="recognizer_name">%s</xliff:g>\'</string>
+
+ <!-- Voice input settings --><skip />
+ <!-- [CHAR_LIMIT=NONE] Name of the settings item to open the voice input settings. -->
+ <string name="voice_input_settings">Voice input settings</string>
+ <!-- [CHAR_LIMIT=NONE] Title of the screen of the voice input settings -->
+ <string name="voice_input_settings_title">Voice input</string>
+ <!-- [CHAR LIMIT=50] The text for the settings section in which users select
+ a voice interaction or recognition service to use. -->
+ <string name="voice_service_preference_section_title">Voice input services</string>
+ <!-- [CHAR LIMIT=NONE] The summary text for the voice service preference that is
+ a full voice interaction service. -->
+ <string name="voice_interactor_preference_summary">Full voice interaction</string>
+ <!-- [CHAR LIMIT=NONE] The summary text for the voice service preference that is
+ a simple voice recognition service. -->
+ <string name="voice_recognizer_preference_summary">Simple voice recognition</string>
+ <!-- [CHAR_LIMIT=NONE] Warning message about security implications of enabling a
+ voice interaction service, displayed as a dialog
+ message when the user selects to enable a service. -->
+ <string name="voice_interaction_security_warning">This voice input service will be able to
+ control all voice enabled applications on your behalf.
+ It comes from the <xliff:g id="voice_input_service_app_name">%s</xliff:g> application.
+ Enable the use of this service?</string>
<!-- Text-To-Speech (TTS) settings --><skip />
<!-- Name of the TTS package as listed by the package manager. -->
@@ -5462,6 +5466,7 @@
<string name="keywords_storage">space disk hard drive</string>
<string name="keywords_battery">power</string>
<string name="keywords_spell_checker">spelling</string>
+ <string name="keywords_voice_input">recognizer input speech speak language hands-free hand free recognition offensive word audio history bluetooth headset</string>
<string name="keywords_text_to_speech_output">rate language default speak speaking</string>
<string name="keywords_date_and_time">clock</string>
<string name="keywords_factory_data_reset">wipe delete</string>
@@ -5474,7 +5479,6 @@
<string name="keywords_accounts">account</string>
<string name="keywords_users">restriction restrict restricted</string>
<string name="keywords_keyboard_and_ime">text correction correct sound vibrate auto language gesture suggest suggestion theme offensive word type emoji</string>
- <string name="keywords_search_voice">language hands-free hand free recognition offensive word audio history bluetooth headset</string>
<!-- NFC Wi-Fi pairing/setup strings-->
diff --git a/res/xml/language_settings.xml b/res/xml/language_settings.xml
index b493a0f..9d12857 100644
--- a/res/xml/language_settings.xml
+++ b/res/xml/language_settings.xml
@@ -99,31 +99,11 @@
android:key="voice_category"
android:title="@string/voice_category" >
- <!-- entries, entryValues, and defaultValue will be populated programmatically. -->
- <ListPreference
- android:key="voice_interactor"
- android:title="@string/voice_interactor_title"
- android:dialogTitle="@string/voice_interactor_title"
- />
-
- <!-- An intent for this preference will be populated programmatically. -->
<PreferenceScreen
- android:key="voice_interactor_settings"
- android:title="@string/voice_interactor_settings_title"
- />
-
- <!-- entries, entryValues, and defaultValue will be populated programmatically. -->
- <ListPreference
- android:key="recognizer"
- android:title="@string/recognizer_title"
- android:dialogTitle="@string/recognizer_title"
- />
-
- <!-- An intent for this preference will be populated programmatically. -->
- <PreferenceScreen
- android:key="recognizer_settings"
- android:title="@string/recognizer_settings_title"
- settings:keywords="@string/keywords_search_voice"
+ android:key="voice_input_settings"
+ android:title="@string/voice_input_settings_title"
+ settings:keywords="@string/keywords_voice_input"
+ android:fragment="com.android.settings.voice.VoiceInputSettings"
/>
<PreferenceScreen
diff --git a/res/xml/voice_input_settings.xml b/res/xml/voice_input_settings.xml
new file mode 100644
index 0000000..47d72ec
--- /dev/null
+++ b/res/xml/voice_input_settings.xml
@@ -0,0 +1,25 @@
+<?xml version="1.0" encoding="utf-8"?>
+<!-- Copyright (C) 2014 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.
+-->
+
+<PreferenceScreen xmlns:android="http://schemas.android.com/apk/res/android"
+ android:title="@string/voice_input_settings_title">
+
+ <!-- The contents of this category are filled in by the Java code
+ based on the list of available voice interaction and recognition services. -->
+ <PreferenceCategory android:key="voice_service_preference_section"
+ android:title="@string/voice_service_preference_section_title" />
+
+</PreferenceScreen>