Upload query text whenever it changes.

Bug: 33266688
Test: make RunSettingsRoboTests
Change-Id: Ie26f9d4ad7460d49305457a7a3066d121e374eab
diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java
index 9d703c1..fe25a8f 100644
--- a/src/com/android/settings/SettingsActivity.java
+++ b/src/com/android/settings/SettingsActivity.java
@@ -36,6 +36,7 @@
 import android.os.Bundle;
 import android.os.UserHandle;
 import android.os.UserManager;
+import android.support.annotation.VisibleForTesting;
 import android.support.v14.preference.PreferenceFragment;
 import android.support.v7.preference.Preference;
 import android.support.v7.preference.PreferenceManager;
@@ -53,104 +54,18 @@
 
 import com.android.internal.util.ArrayUtils;
 import com.android.settings.Settings.WifiSettingsActivity;
-import com.android.settings.accessibility.AccessibilitySettings;
-import com.android.settings.accessibility.AccessibilitySettingsForSetupWizard;
-import com.android.settings.accessibility.CaptionPropertiesFragment;
-import com.android.settings.accessibility.ToggleDaltonizerPreferenceFragment;
-import com.android.settings.accounts.AccountSettings;
-import com.android.settings.accounts.AccountSyncSettings;
-import com.android.settings.accounts.ChooseAccountActivity;
-import com.android.settings.accounts.ManagedProfileSettings;
-import com.android.settings.accounts.UserAndAccountDashboardFragment;
-import com.android.settings.applications.AdvancedAppSettings;
-import com.android.settings.applications.AppAndNotificationDashboardFragment;
-import com.android.settings.applications.DrawOverlayDetails;
-import com.android.settings.applications.InstalledAppDetails;
-import com.android.settings.applications.ManageApplications;
-import com.android.settings.applications.ManageAssist;
-import com.android.settings.applications.ManageDomainUrls;
-import com.android.settings.applications.NotificationApps;
-import com.android.settings.applications.ProcessStatsSummary;
-import com.android.settings.applications.ProcessStatsUi;
-import com.android.settings.applications.UsageAccessDetails;
-import com.android.settings.applications.VrListenerSettings;
-import com.android.settings.applications.WriteSettingsDetails;
-import com.android.settings.bluetooth.BluetoothSettings;
-import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
+import com.android.settings.core.gateway.SettingsGateway;
 import com.android.settings.core.instrumentation.SharedPreferencesLogger;
 import com.android.settings.dashboard.DashboardContainerFragment;
 import com.android.settings.dashboard.DashboardFeatureProvider;
 import com.android.settings.dashboard.DashboardSummary;
 import com.android.settings.dashboard.SearchResultsSummary;
-import com.android.settings.dashboard.SupportFragment;
-import com.android.settings.datausage.DataUsageSummary;
-import com.android.settings.deletionhelper.AutomaticStorageManagerSettings;
-import com.android.settings.deviceinfo.ImeiInformation;
-import com.android.settings.deviceinfo.PrivateVolumeForget;
-import com.android.settings.deviceinfo.PrivateVolumeSettings;
-import com.android.settings.deviceinfo.PublicVolumeSettings;
-import com.android.settings.deviceinfo.SimStatus;
-import com.android.settings.deviceinfo.Status;
-import com.android.settings.deviceinfo.StorageDashboardFragment;
-import com.android.settings.deviceinfo.StorageSettings;
-import com.android.settings.display.NightDisplaySettings;
-import com.android.settings.enterprise.EnterprisePrivacySettings;
-import com.android.settings.fuelgauge.BatterySaverSettings;
-import com.android.settings.fuelgauge.PowerUsageDetail;
-import com.android.settings.fuelgauge.PowerUsageSummary;
-import com.android.settings.gestures.DoubleTapPowerSettings;
-import com.android.settings.gestures.DoubleTapScreenSettings;
-import com.android.settings.gestures.DoubleTwistGestureSettings;
-import com.android.settings.gestures.GestureSettings;
-import com.android.settings.gestures.PickupGestureSettings;
-import com.android.settings.gestures.SwipeToNotificationSettings;
-import com.android.settings.inputmethod.AvailableVirtualKeyboardFragment;
-import com.android.settings.inputmethod.InputAndGestureSettings;
-import com.android.settings.inputmethod.InputMethodAndLanguageSettings;
-import com.android.settings.inputmethod.KeyboardLayoutPickerFragment;
-import com.android.settings.inputmethod.PhysicalKeyboardFragment;
-import com.android.settings.inputmethod.SpellCheckersSettings;
-import com.android.settings.inputmethod.UserDictionaryList;
-import com.android.settings.language.LanguageAndRegionSettings;
-import com.android.settings.localepicker.LocaleListEditor;
-import com.android.settings.location.LocationSettings;
-import com.android.settings.network.NetworkDashboardFragment;
-import com.android.settings.nfc.AndroidBeam;
-import com.android.settings.nfc.PaymentSettings;
-import com.android.settings.notification.AppNotificationSettings;
-import com.android.settings.notification.ConfigureNotificationSettings;
-import com.android.settings.notification.NotificationAccessSettings;
-import com.android.settings.notification.NotificationStation;
-import com.android.settings.notification.OtherSoundSettings;
-import com.android.settings.notification.SoundSettings;
-import com.android.settings.notification.ZenAccessSettings;
-import com.android.settings.notification.ZenModeAutomationSettings;
-import com.android.settings.notification.ZenModeEventRuleSettings;
-import com.android.settings.notification.ZenModePrioritySettings;
-import com.android.settings.notification.ZenModeScheduleRuleSettings;
-import com.android.settings.notification.ZenModeSettings;
-import com.android.settings.notification.ZenModeVisualInterruptionSettings;
 import com.android.settings.overlay.FeatureFactory;
-import com.android.settings.print.PrintJobSettingsFragment;
-import com.android.settings.print.PrintSettingsFragment;
 import com.android.settings.qstile.DevelopmentTiles;
 import com.android.settings.search.DynamicIndexableContentMonitor;
 import com.android.settings.search.Index;
 import com.android.settings.search2.SearchFeatureProvider;
-import com.android.settings.search2.SearchFragment;
-import com.android.settings.sim.SimSettings;
-import com.android.settings.system.SystemDashboardFragment;
-import com.android.settings.tts.TextToSpeechSettings;
-import com.android.settings.users.UserSettings;
-import com.android.settings.vpn2.VpnSettings;
-import com.android.settings.wfd.WifiDisplaySettings;
 import com.android.settings.widget.SwitchBar;
-import com.android.settings.wifi.AdvancedWifiSettings;
-import com.android.settings.wifi.SavedAccessPointsWifiSettings;
-import com.android.settings.wifi.WifiAPITest;
-import com.android.settings.wifi.WifiInfo;
-import com.android.settings.wifi.WifiSettings;
-import com.android.settings.wifi.p2p.WifiP2pSettings;
 import com.android.settingslib.drawer.DashboardCategory;
 import com.android.settingslib.drawer.SettingsDrawerActivity;
 import com.android.settingslib.drawer.Tile;
@@ -309,120 +224,6 @@
             "com.android.settings.Settings.AboutDeviceDashboardAlias",
     };
 
-    private static final String[] ENTRY_FRAGMENTS = {
-            WirelessSettings.class.getName(),
-            WifiSettings.class.getName(),
-            AdvancedWifiSettings.class.getName(),
-            SavedAccessPointsWifiSettings.class.getName(),
-            BluetoothSettings.class.getName(),
-            SimSettings.class.getName(),
-            TetherSettings.class.getName(),
-            WifiP2pSettings.class.getName(),
-            VpnSettings.class.getName(),
-            DateTimeSettings.class.getName(),
-            LocaleListEditor.class.getName(),
-            InputMethodAndLanguageSettings.class.getName(),
-            AvailableVirtualKeyboardFragment.class.getName(),
-            InputAndGestureSettings.class.getName(),
-            LanguageAndRegionSettings.class.getName(),
-            SpellCheckersSettings.class.getName(),
-            UserDictionaryList.class.getName(),
-            UserDictionarySettings.class.getName(),
-            HomeSettings.class.getName(),
-            DisplaySettings.class.getName(),
-            DeviceInfoSettings.class.getName(),
-            ManageApplications.class.getName(),
-            NotificationApps.class.getName(),
-            ManageAssist.class.getName(),
-            ProcessStatsUi.class.getName(),
-            NotificationStation.class.getName(),
-            LocationSettings.class.getName(),
-            SecuritySettings.class.getName(),
-            UsageAccessDetails.class.getName(),
-            PrivacySettings.class.getName(),
-            DeviceAdminSettings.class.getName(),
-            AccessibilitySettings.class.getName(),
-            AccessibilitySettingsForSetupWizard.class.getName(),
-            CaptionPropertiesFragment.class.getName(),
-            ToggleDaltonizerPreferenceFragment.class.getName(),
-            TextToSpeechSettings.class.getName(),
-            StorageSettings.class.getName(),
-            PrivateVolumeForget.class.getName(),
-            PrivateVolumeSettings.class.getName(),
-            PublicVolumeSettings.class.getName(),
-            DevelopmentSettings.class.getName(),
-            AndroidBeam.class.getName(),
-            WifiDisplaySettings.class.getName(),
-            PowerUsageSummary.class.getName(),
-            AccountSyncSettings.class.getName(),
-            AccountSettings.class.getName(),
-            GestureSettings.class.getName(),
-            SwipeToNotificationSettings.class.getName(),
-            DoubleTapPowerSettings.class.getName(),
-            DoubleTapScreenSettings.class.getName(),
-            PickupGestureSettings.class.getName(),
-            DoubleTwistGestureSettings.class.getName(),
-            CryptKeeperSettings.class.getName(),
-            DataUsageSummary.class.getName(),
-            DreamSettings.class.getName(),
-            UserSettings.class.getName(),
-            NotificationAccessSettings.class.getName(),
-            ZenAccessSettings.class.getName(),
-            PrintSettingsFragment.class.getName(),
-            PrintJobSettingsFragment.class.getName(),
-            TrustedCredentialsSettings.class.getName(),
-            PaymentSettings.class.getName(),
-            KeyboardLayoutPickerFragment.class.getName(),
-            PhysicalKeyboardFragment.class.getName(),
-            ZenModeSettings.class.getName(),
-            SoundSettings.class.getName(),
-            ConfigureNotificationSettings.class.getName(),
-            ChooseLockPassword.ChooseLockPasswordFragment.class.getName(),
-            ChooseLockPattern.ChooseLockPatternFragment.class.getName(),
-            InstalledAppDetails.class.getName(),
-            BatterySaverSettings.class.getName(),
-            AppNotificationSettings.class.getName(),
-            OtherSoundSettings.class.getName(),
-            ApnSettings.class.getName(),
-            ApnEditor.class.getName(),
-            WifiCallingSettings.class.getName(),
-            ZenModePrioritySettings.class.getName(),
-            ZenModeAutomationSettings.class.getName(),
-            ZenModeScheduleRuleSettings.class.getName(),
-            ZenModeEventRuleSettings.class.getName(),
-            ZenModeVisualInterruptionSettings.class.getName(),
-            ProcessStatsUi.class.getName(),
-            PowerUsageDetail.class.getName(),
-            ProcessStatsSummary.class.getName(),
-            DrawOverlayDetails.class.getName(),
-            WriteSettingsDetails.class.getName(),
-            AdvancedAppSettings.class.getName(),
-            WallpaperTypeSettings.class.getName(),
-            VrListenerSettings.class.getName(),
-            ManagedProfileSettings.class.getName(),
-            ChooseAccountActivity.class.getName(),
-            IccLockSettings.class.getName(),
-            ImeiInformation.class.getName(),
-            SimStatus.class.getName(),
-            Status.class.getName(),
-            TestingSettings.class.getName(),
-            WifiAPITest.class.getName(),
-            WifiInfo.class.getName(),
-            MasterClear.class.getName(),
-            NightDisplaySettings.class.getName(),
-            ManageDomainUrls.class.getName(),
-            AutomaticStorageManagerSettings.class.getName(),
-            SupportFragment.class.getName(),
-            StorageDashboardFragment.class.getName(),
-            SystemDashboardFragment.class.getName(),
-            NetworkDashboardFragment.class.getName(),
-            ConnectedDeviceDashboardFragment.class.getName(),
-            AppAndNotificationDashboardFragment.class.getName(),
-            UserAndAccountDashboardFragment.class.getName(),
-            EnterprisePrivacySettings.class.getName(),
-    };
-
-
     private static final String[] LIKE_SHORTCUT_INTENT_ACTION_ARRAY = {
             "android.settings.APPLICATION_DETAILS_SETTINGS"
     };
@@ -457,8 +258,7 @@
         }
     };
 
-    private final DynamicIndexableContentMonitor mDynamicIndexableContentMonitor =
-            new DynamicIndexableContentMonitor();
+    private DynamicIndexableContentMonitor mDynamicIndexableContentMonitor;
 
     private ActionBar mActionBar;
     private SwitchBar mSwitchBar;
@@ -477,14 +277,10 @@
     private MenuItem mSearchMenuItem;
     private boolean mSearchMenuItemExpanded = false;
     private SearchResultsSummary mSearchResultsFragment;
-    private String mSearchQuery;
-
     private SearchFeatureProvider mSearchFeatureProvider;
 
     // Categories
-    private ArrayList<DashboardCategory> mCategories = new ArrayList<DashboardCategory>();
-
-    private static final String MSG_DATA_FORCE_REFRESH = "msg_data_force_refresh";
+    private ArrayList<DashboardCategory> mCategories = new ArrayList<>();
 
     private boolean mNeedToRevertToInitialFragment = false;
 
@@ -492,6 +288,9 @@
     private Intent mResultIntentData;
     private ComponentName mCurrentSuggestion;
 
+    @VisibleForTesting
+    String mSearchQuery;
+
     public SwitchBar getSwitchBar() {
         return mSwitchBar;
     }
@@ -907,7 +706,9 @@
         registerReceiver(mBatteryInfoReceiver, new IntentFilter(Intent.ACTION_BATTERY_CHANGED));
         registerReceiver(mUserAddRemoveReceiver, new IntentFilter(Intent.ACTION_USER_ADDED));
         registerReceiver(mUserAddRemoveReceiver, new IntentFilter(Intent.ACTION_USER_REMOVED));
-
+        if (mDynamicIndexableContentMonitor == null) {
+            mDynamicIndexableContentMonitor = new DynamicIndexableContentMonitor();
+        }
         mDynamicIndexableContentMonitor.register(this, LOADER_ID_INDEXABLE_CONTENT_MONITOR);
 
         if(mDisplaySearch && !TextUtils.isEmpty(mSearchQuery)) {
@@ -921,7 +722,9 @@
         super.onPause();
         unregisterReceiver(mBatteryInfoReceiver);
         unregisterReceiver(mUserAddRemoveReceiver);
-        mDynamicIndexableContentMonitor.unregister();
+        if (mDynamicIndexableContentMonitor != null) {
+            mDynamicIndexableContentMonitor.unregister();
+        }
     }
 
     @Override
@@ -936,8 +739,8 @@
     protected boolean isValidFragment(String fragmentName) {
         // Almost all fragments are wrapped in this,
         // except for a few that have their own activities.
-        for (int i = 0; i < ENTRY_FRAGMENTS.length; i++) {
-            if (ENTRY_FRAGMENTS[i].equals(fragmentName)) return true;
+        for (int i = 0; i < SettingsGateway.ENTRY_FRAGMENTS.length; i++) {
+            if (SettingsGateway.ENTRY_FRAGMENTS[i].equals(fragmentName)) return true;
         }
         return false;
     }
@@ -1305,10 +1108,10 @@
     @Deprecated
     @Override
     public boolean onQueryTextChange(String newText) {
+        mSearchQuery = newText;
         if (mSearchFeatureProvider.isEnabled() || mSearchResultsFragment == null) {
             return false;
         }
-        mSearchQuery = newText;
         return mSearchResultsFragment.onQueryTextChange(newText);
     }
 
diff --git a/src/com/android/settings/core/gateway/SettingsGateway.java b/src/com/android/settings/core/gateway/SettingsGateway.java
new file mode 100644
index 0000000..db7eb5a
--- /dev/null
+++ b/src/com/android/settings/core/gateway/SettingsGateway.java
@@ -0,0 +1,247 @@
+/*
+ * Copyright (C) 2016 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.
+ */
+
+package com.android.settings.core.gateway;
+
+import com.android.settings.ApnEditor;
+import com.android.settings.ApnSettings;
+import com.android.settings.ChooseLockPassword;
+import com.android.settings.ChooseLockPattern;
+import com.android.settings.CryptKeeperSettings;
+import com.android.settings.DateTimeSettings;
+import com.android.settings.DevelopmentSettings;
+import com.android.settings.DeviceAdminSettings;
+import com.android.settings.DeviceInfoSettings;
+import com.android.settings.DisplaySettings;
+import com.android.settings.DreamSettings;
+import com.android.settings.HomeSettings;
+import com.android.settings.IccLockSettings;
+import com.android.settings.MasterClear;
+import com.android.settings.PrivacySettings;
+import com.android.settings.SecuritySettings;
+import com.android.settings.TestingSettings;
+import com.android.settings.TetherSettings;
+import com.android.settings.TrustedCredentialsSettings;
+import com.android.settings.UserDictionarySettings;
+import com.android.settings.WallpaperTypeSettings;
+import com.android.settings.WifiCallingSettings;
+import com.android.settings.WirelessSettings;
+import com.android.settings.accessibility.AccessibilitySettings;
+import com.android.settings.accessibility.AccessibilitySettingsForSetupWizard;
+import com.android.settings.accessibility.CaptionPropertiesFragment;
+import com.android.settings.accessibility.ToggleDaltonizerPreferenceFragment;
+import com.android.settings.accounts.AccountSettings;
+import com.android.settings.accounts.AccountSyncSettings;
+import com.android.settings.accounts.ChooseAccountActivity;
+import com.android.settings.accounts.ManagedProfileSettings;
+import com.android.settings.accounts.UserAndAccountDashboardFragment;
+import com.android.settings.applications.AdvancedAppSettings;
+import com.android.settings.applications.AppAndNotificationDashboardFragment;
+import com.android.settings.applications.DrawOverlayDetails;
+import com.android.settings.applications.InstalledAppDetails;
+import com.android.settings.applications.ManageApplications;
+import com.android.settings.applications.ManageAssist;
+import com.android.settings.applications.ManageDomainUrls;
+import com.android.settings.applications.NotificationApps;
+import com.android.settings.applications.ProcessStatsSummary;
+import com.android.settings.applications.ProcessStatsUi;
+import com.android.settings.applications.UsageAccessDetails;
+import com.android.settings.applications.VrListenerSettings;
+import com.android.settings.applications.WriteSettingsDetails;
+import com.android.settings.bluetooth.BluetoothSettings;
+import com.android.settings.connecteddevice.ConnectedDeviceDashboardFragment;
+import com.android.settings.dashboard.SupportFragment;
+import com.android.settings.datausage.DataUsageSummary;
+import com.android.settings.deletionhelper.AutomaticStorageManagerSettings;
+import com.android.settings.deviceinfo.ImeiInformation;
+import com.android.settings.deviceinfo.PrivateVolumeForget;
+import com.android.settings.deviceinfo.PrivateVolumeSettings;
+import com.android.settings.deviceinfo.PublicVolumeSettings;
+import com.android.settings.deviceinfo.SimStatus;
+import com.android.settings.deviceinfo.Status;
+import com.android.settings.deviceinfo.StorageDashboardFragment;
+import com.android.settings.deviceinfo.StorageSettings;
+import com.android.settings.display.NightDisplaySettings;
+import com.android.settings.enterprise.EnterprisePrivacySettings;
+import com.android.settings.fuelgauge.BatterySaverSettings;
+import com.android.settings.fuelgauge.PowerUsageDetail;
+import com.android.settings.fuelgauge.PowerUsageSummary;
+import com.android.settings.gestures.DoubleTapPowerSettings;
+import com.android.settings.gestures.DoubleTapScreenSettings;
+import com.android.settings.gestures.DoubleTwistGestureSettings;
+import com.android.settings.gestures.GestureSettings;
+import com.android.settings.gestures.PickupGestureSettings;
+import com.android.settings.gestures.SwipeToNotificationSettings;
+import com.android.settings.inputmethod.AvailableVirtualKeyboardFragment;
+import com.android.settings.inputmethod.InputAndGestureSettings;
+import com.android.settings.inputmethod.InputMethodAndLanguageSettings;
+import com.android.settings.inputmethod.KeyboardLayoutPickerFragment;
+import com.android.settings.inputmethod.PhysicalKeyboardFragment;
+import com.android.settings.inputmethod.SpellCheckersSettings;
+import com.android.settings.inputmethod.UserDictionaryList;
+import com.android.settings.language.LanguageAndRegionSettings;
+import com.android.settings.localepicker.LocaleListEditor;
+import com.android.settings.location.LocationSettings;
+import com.android.settings.network.NetworkDashboardFragment;
+import com.android.settings.nfc.AndroidBeam;
+import com.android.settings.nfc.PaymentSettings;
+import com.android.settings.notification.AppNotificationSettings;
+import com.android.settings.notification.ConfigureNotificationSettings;
+import com.android.settings.notification.NotificationAccessSettings;
+import com.android.settings.notification.NotificationStation;
+import com.android.settings.notification.OtherSoundSettings;
+import com.android.settings.notification.SoundSettings;
+import com.android.settings.notification.ZenAccessSettings;
+import com.android.settings.notification.ZenModeAutomationSettings;
+import com.android.settings.notification.ZenModeEventRuleSettings;
+import com.android.settings.notification.ZenModePrioritySettings;
+import com.android.settings.notification.ZenModeScheduleRuleSettings;
+import com.android.settings.notification.ZenModeSettings;
+import com.android.settings.notification.ZenModeVisualInterruptionSettings;
+import com.android.settings.print.PrintJobSettingsFragment;
+import com.android.settings.print.PrintSettingsFragment;
+import com.android.settings.sim.SimSettings;
+import com.android.settings.system.SystemDashboardFragment;
+import com.android.settings.tts.TextToSpeechSettings;
+import com.android.settings.users.UserSettings;
+import com.android.settings.vpn2.VpnSettings;
+import com.android.settings.wfd.WifiDisplaySettings;
+import com.android.settings.wifi.AdvancedWifiSettings;
+import com.android.settings.wifi.SavedAccessPointsWifiSettings;
+import com.android.settings.wifi.WifiAPITest;
+import com.android.settings.wifi.WifiInfo;
+import com.android.settings.wifi.WifiSettings;
+import com.android.settings.wifi.p2p.WifiP2pSettings;
+
+public class SettingsGateway {
+
+    /**
+     * A list of fragment that can be hosted by SettingsActivity. SettingsActivity will throw a
+     * security exception if the fragment it needs to display is not in this list.
+     */
+    public static final String[] ENTRY_FRAGMENTS = {
+            WirelessSettings.class.getName(),
+            WifiSettings.class.getName(),
+            AdvancedWifiSettings.class.getName(),
+            SavedAccessPointsWifiSettings.class.getName(),
+            BluetoothSettings.class.getName(),
+            SimSettings.class.getName(),
+            TetherSettings.class.getName(),
+            WifiP2pSettings.class.getName(),
+            VpnSettings.class.getName(),
+            DateTimeSettings.class.getName(),
+            LocaleListEditor.class.getName(),
+            InputMethodAndLanguageSettings.class.getName(),
+            AvailableVirtualKeyboardFragment.class.getName(),
+            InputAndGestureSettings.class.getName(),
+            LanguageAndRegionSettings.class.getName(),
+            SpellCheckersSettings.class.getName(),
+            UserDictionaryList.class.getName(),
+            UserDictionarySettings.class.getName(),
+            HomeSettings.class.getName(),
+            DisplaySettings.class.getName(),
+            DeviceInfoSettings.class.getName(),
+            ManageApplications.class.getName(),
+            NotificationApps.class.getName(),
+            ManageAssist.class.getName(),
+            ProcessStatsUi.class.getName(),
+            NotificationStation.class.getName(),
+            LocationSettings.class.getName(),
+            SecuritySettings.class.getName(),
+            UsageAccessDetails.class.getName(),
+            PrivacySettings.class.getName(),
+            DeviceAdminSettings.class.getName(),
+            AccessibilitySettings.class.getName(),
+            AccessibilitySettingsForSetupWizard.class.getName(),
+            CaptionPropertiesFragment.class.getName(),
+            ToggleDaltonizerPreferenceFragment.class.getName(),
+            TextToSpeechSettings.class.getName(),
+            StorageSettings.class.getName(),
+            PrivateVolumeForget.class.getName(),
+            PrivateVolumeSettings.class.getName(),
+            PublicVolumeSettings.class.getName(),
+            DevelopmentSettings.class.getName(),
+            AndroidBeam.class.getName(),
+            WifiDisplaySettings.class.getName(),
+            PowerUsageSummary.class.getName(),
+            AccountSyncSettings.class.getName(),
+            AccountSettings.class.getName(),
+            GestureSettings.class.getName(),
+            SwipeToNotificationSettings.class.getName(),
+            DoubleTapPowerSettings.class.getName(),
+            DoubleTapScreenSettings.class.getName(),
+            PickupGestureSettings.class.getName(),
+            DoubleTwistGestureSettings.class.getName(),
+            CryptKeeperSettings.class.getName(),
+            DataUsageSummary.class.getName(),
+            DreamSettings.class.getName(),
+            UserSettings.class.getName(),
+            NotificationAccessSettings.class.getName(),
+            ZenAccessSettings.class.getName(),
+            PrintSettingsFragment.class.getName(),
+            PrintJobSettingsFragment.class.getName(),
+            TrustedCredentialsSettings.class.getName(),
+            PaymentSettings.class.getName(),
+            KeyboardLayoutPickerFragment.class.getName(),
+            PhysicalKeyboardFragment.class.getName(),
+            ZenModeSettings.class.getName(),
+            SoundSettings.class.getName(),
+            ConfigureNotificationSettings.class.getName(),
+            ChooseLockPassword.ChooseLockPasswordFragment.class.getName(),
+            ChooseLockPattern.ChooseLockPatternFragment.class.getName(),
+            InstalledAppDetails.class.getName(),
+            BatterySaverSettings.class.getName(),
+            AppNotificationSettings.class.getName(),
+            OtherSoundSettings.class.getName(),
+            ApnSettings.class.getName(),
+            ApnEditor.class.getName(),
+            WifiCallingSettings.class.getName(),
+            ZenModePrioritySettings.class.getName(),
+            ZenModeAutomationSettings.class.getName(),
+            ZenModeScheduleRuleSettings.class.getName(),
+            ZenModeEventRuleSettings.class.getName(),
+            ZenModeVisualInterruptionSettings.class.getName(),
+            ProcessStatsUi.class.getName(),
+            PowerUsageDetail.class.getName(),
+            ProcessStatsSummary.class.getName(),
+            DrawOverlayDetails.class.getName(),
+            WriteSettingsDetails.class.getName(),
+            AdvancedAppSettings.class.getName(),
+            WallpaperTypeSettings.class.getName(),
+            VrListenerSettings.class.getName(),
+            ManagedProfileSettings.class.getName(),
+            ChooseAccountActivity.class.getName(),
+            IccLockSettings.class.getName(),
+            ImeiInformation.class.getName(),
+            SimStatus.class.getName(),
+            Status.class.getName(),
+            TestingSettings.class.getName(),
+            WifiAPITest.class.getName(),
+            WifiInfo.class.getName(),
+            MasterClear.class.getName(),
+            NightDisplaySettings.class.getName(),
+            ManageDomainUrls.class.getName(),
+            AutomaticStorageManagerSettings.class.getName(),
+            SupportFragment.class.getName(),
+            StorageDashboardFragment.class.getName(),
+            SystemDashboardFragment.class.getName(),
+            NetworkDashboardFragment.class.getName(),
+            ConnectedDeviceDashboardFragment.class.getName(),
+            AppAndNotificationDashboardFragment.class.getName(),
+            UserAndAccountDashboardFragment.class.getName(),
+            EnterprisePrivacySettings.class.getName(),
+    };
+}