Implement default assist app setting

- Add "None" support to AppListPreference
- Add DefaultAssistPreference to manage assist;
- Add AppListPreferenceWithSettings to show a settings icon;
- Implement DefaultAssistPreference based on AppListPreferenceWithSettings;
- Move voice input settings into ManageAssist and implement it
  based on AppListPreferenceWithSettings;

Bug:20210110
Change-Id: If283b8b55a46b428ecfa6e45dc2123292b1d4302
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index f2454ea..68bf811 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -559,10 +559,10 @@
                 android:value="true" />
         </activity>
 
-        <activity android:name="Settings$VoiceInputSettingsActivity"
-                android:label="@string/voice_input_settings_title"
+        <activity android:name="Settings$ManageAssistActivity"
+                android:label="@string/assist_and_voice_input_title"
                 android:taskAffinity="com.android.settings"
-                android:parentActivityName="Settings$InputMethodAndLanguageSettingsActivity">
+                android:parentActivityName="Settings$ManageApplicationsActivity">
             <intent-filter android:priority="1">
                 <action android:name="android.settings.VOICE_INPUT_SETTINGS" />
                 <category android:name="android.intent.category.DEFAULT" />
@@ -572,9 +572,9 @@
                 <category android:name="android.intent.category.DEFAULT" />
             </intent-filter>
             <meta-data android:name="com.android.settings.FRAGMENT_CLASS"
-                android:value="com.android.settings.voice.VoiceInputSettings" />
+                android:value="com.android.settings.applications.ManageAssist" />
             <meta-data android:name="com.android.settings.TOP_LEVEL_HEADER_ID"
-                android:resource="@id/language_settings" />
+                android:resource="@id/application_settings" />
         </activity>
 
         <activity android:name="Settings$KeyboardLayoutPickerActivity"