Merge "Adds cross-profile intents for Bluetooth detail Settings"
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 1f2add0..2ee24f3 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -329,11 +329,11 @@
     <string name="bluetooth_disable_a2dp_hw_offload_dialog_cancel">Cancel</string>
 
     <!-- Title for Bluetooth device group with media capability group [CHAR LIMIT=none]-->
-    <string name="connected_device_available_media_title">Available media devices</string>
+    <string name="connected_device_media_device_title">Media devices</string>
     <!-- Title for Bluetooth device group with media capability group [CHAR LIMIT=none]-->
-    <string name="connected_device_available_call_title">Available call devices</string>
+    <string name="connected_device_call_device_title">Call devices</string>
     <!-- Title for connected device group [CHAR LIMIT=none]-->
-    <string name="connected_device_connected_title">Currently connected</string>
+    <string name="connected_device_other_device_title">Other devices</string>
     <!-- Title for connected device group [CHAR LIMIT=none]-->
     <string name="connected_device_saved_title">Saved devices</string>
     <!-- Summary for preference to add a device [CHAR LIMIT=none]-->
@@ -4685,7 +4685,7 @@
     <!-- Title for the accessibility preference category of interaction control services and settings. [CHAR LIMIT=50] -->
     <string name="interaction_control_category_title">Interaction controls</string>
     <!-- Title for the accessibility preference category of services downloaded by the user. [CHAR LIMIT=50] -->
-    <string name="user_installed_services_category_title">Downloaded services</string>
+    <string name="user_installed_services_category_title">Downloaded apps</string>
     <!-- Title for the accessibility preference category of settings considered to be experimental, meaning they might be changed or removed in the future. [CHAR LIMIT=50] -->
     <string name="experimental_category_title">Experimental</string>
     <!-- Title for feature flags dashboard where developers can turn on experimental features [CHAR LIMIT=50] -->
@@ -4809,7 +4809,7 @@
     <!-- Title for accessibility preference for configuring touch feedback vibrations. -->
     <string name="accessibility_touch_vibration_title">Touch feedback</string>
     <!-- Used in the acessibilty service settings to control turning on/off the service entirely -->
-    <string name="accessibility_service_master_switch_title">Use service</string>
+    <string name="accessibility_service_master_switch_title">Use <xliff:g id="accessibility_app_name" example="TalkBack">%1$s</xliff:g></string>
     <!-- Used in the Color correction settings screen to control turning on/off the feature entirely -->
     <string name="accessibility_daltonizer_master_switch_title">Use color correction</string>
     <!-- Used in the Captions settings screen to control turning on/off the feature entirely -->
diff --git a/res/xml/connected_devices.xml b/res/xml/connected_devices.xml
index a210ea5..0e5afc3 100644
--- a/res/xml/connected_devices.xml
+++ b/res/xml/connected_devices.xml
@@ -28,12 +28,12 @@
 
     <PreferenceCategory
         android:key="available_device_list"
-        android:title="@string/connected_device_available_media_title"
+        android:title="@string/connected_device_media_device_title"
         settings:controller="com.android.settings.connecteddevice.AvailableMediaDeviceGroupController"/>
 
     <PreferenceCategory
         android:key="connected_device_list"
-        android:title="@string/connected_device_connected_title"
+        android:title="@string/connected_device_other_device_title"
         settings:controller="com.android.settings.connecteddevice.ConnectedDeviceGroupController"/>
 
     <com.android.settingslib.RestrictedPreference
diff --git a/res/xml/tether_prefs.xml b/res/xml/tether_prefs.xml
index 3f9b8c8..54c49e8 100644
--- a/res/xml/tether_prefs.xml
+++ b/res/xml/tether_prefs.xml
@@ -23,7 +23,7 @@
     <com.android.settings.widget.FixedLineSummaryPreference
         android:key="wifi_tether"
         android:title="@string/wifi_hotspot_checkbox_text"
-        android:summary="@string/summary_two_lines_placeholder"
+        android:summary="@string/summary_placeholder"
         android:fragment="com.android.settings.wifi.tether.WifiTetherSettings"
         settings:summaryLineCount="2" />
 
diff --git a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
index 95a2b76..ab855bc 100644
--- a/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/AccessibilityShortcutPreferenceFragment.java
@@ -34,6 +34,7 @@
 
 import com.android.internal.accessibility.AccessibilityShortcutController;
 import com.android.settings.R;
+import com.android.settings.widget.SwitchBar;
 import com.android.settings.search.BaseSearchIndexProvider;
 import com.android.settingslib.search.Indexable;
 import com.android.settingslib.accessibility.AccessibilityUtils;
@@ -126,6 +127,13 @@
         updatePreferences();
     }
 
+    @Override
+    protected void updateSwitchBarText(SwitchBar switchBar) {
+        final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+                getString(R.string.accessibility_global_gesture_preference_title));
+        switchBar.setSwitchBarText(switchBarText, switchBarText);
+    }
+
     private void updatePreferences() {
         ContentResolver cr = getContentResolver();
         Context context = getContext();
diff --git a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
index 1556bec..f30af54 100644
--- a/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleAccessibilityServicePreferenceFragment.java
@@ -44,6 +44,7 @@
 import com.android.internal.widget.LockPatternUtils;
 import com.android.settings.R;
 import com.android.settings.password.ConfirmDeviceCredentialActivity;
+import com.android.settings.widget.SwitchBar;
 import com.android.settings.widget.ToggleSwitch;
 import com.android.settings.widget.ToggleSwitch.OnBeforeCheckedChangeListener;
 import com.android.settingslib.accessibility.AccessibilityUtils;
@@ -211,6 +212,15 @@
         }
     }
 
+    @Override
+    protected void updateSwitchBarText(SwitchBar switchBar) {
+        final AccessibilityServiceInfo info = getAccessibilityServiceInfo();
+        final String switchBarText = (info == null) ? "" :
+                getString(R.string.accessibility_service_master_switch_title,
+                info.getResolveInfo().loadLabel(getPackageManager()));
+        switchBar.setSwitchBarText(switchBarText, switchBarText);
+    }
+
     private void updateSwitchBarToggleSwitch() {
         final boolean checked = AccessibilityUtils.getEnabledServicesFromSettings(getActivity())
                 .contains(mComponentName);
diff --git a/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java
index df72cff..45dd39e 100644
--- a/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleAutoclickPreferenceFragment.java
@@ -172,6 +172,13 @@
         return false;
     }
 
+    @Override
+    protected void updateSwitchBarText(SwitchBar switchBar) {
+        final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+                getString(R.string.accessibility_autoclick_preference_title));
+        switchBar.setSwitchBarText(switchBarText, switchBarText);
+    }
+
     /**
      * Converts seek bar preference progress value to autoclick delay associated with it.
      */
diff --git a/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java
index c5376eb..e02a74a 100644
--- a/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleDaltonizerPreferenceFragment.java
@@ -105,8 +105,9 @@
 
     @Override
     protected void updateSwitchBarText(SwitchBar switchBar) {
-        switchBar.setSwitchBarText(R.string.accessibility_daltonizer_master_switch_title,
-                R.string.accessibility_daltonizer_master_switch_title);
+        final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+                getString(R.string.accessibility_display_daltonizer_preference_title));
+        switchBar.setSwitchBarText(switchBarText, switchBarText);
     }
 
     private void initPreferences() {
diff --git a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
index 314a577..a4b1878 100644
--- a/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleFeaturePreferenceFragment.java
@@ -58,10 +58,10 @@
 
         SettingsActivity activity = (SettingsActivity) getActivity();
         mSwitchBar = activity.getSwitchBar();
-        updateSwitchBarText(mSwitchBar);
         mToggleSwitch = mSwitchBar.getSwitch();
 
         onProcessArguments(getArguments());
+        updateSwitchBarText(mSwitchBar);
 
         // Show the "Settings" menu as if it were a preference screen
         if (mSettingsTitle != null && mSettingsIntent != null) {
diff --git a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
index ec3ebcc..842ec5c 100644
--- a/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
+++ b/src/com/android/settings/accessibility/ToggleScreenMagnificationPreferenceFragment.java
@@ -50,6 +50,7 @@
         ToggleFeaturePreferenceFragment implements SwitchBar.OnSwitchChangeListener {
 
     private static final int DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL = 1;
+    private static final int DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL = 2;
 
     private Dialog mDialog;
 
@@ -172,14 +173,17 @@
 
     @Override
     public Dialog onCreateDialog(int dialogId) {
-        if (dialogId == DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL) {
-            if (isGestureNavigateEnabled()) {
+        switch (dialogId) {
+            case DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL:
                 mDialog = AccessibilityGestureNavigationTutorial
                         .showGestureNavigationTutorialDialog(getActivity());
-            } else {
+                break;
+            case DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL:
                 mDialog = AccessibilityGestureNavigationTutorial
                         .showAccessibilityButtonTutorialDialog(getActivity());
-            }
+                break;
+            default:
+                throw new IllegalArgumentException();
         }
 
         return mDialog;
@@ -193,7 +197,14 @@
 
     @Override
     public int getDialogMetricsCategory(int dialogId) {
-        return SettingsEnums.ACCESSIBILITY_TOGGLE_SCREEN_MAGNIFICATION;
+        switch (dialogId) {
+            case DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL:
+                return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_GESTURE_NAVIGATION;
+            case DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL:
+                return SettingsEnums.DIALOG_TOGGLE_SCREEN_MAGNIFICATION_ACCESSIBILITY_BUTTON;
+            default:
+                return 0;
+        }
     }
 
     @Override
@@ -206,7 +217,8 @@
         if (enabled && TextUtils.equals(
                 Settings.Secure.ACCESSIBILITY_DISPLAY_MAGNIFICATION_NAVBAR_ENABLED,
                 preferenceKey)) {
-            showDialog(DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL);
+            showDialog(isGestureNavigateEnabled() ? DIALOG_ID_GESTURE_NAVIGATION_TUTORIAL
+                    : DIALOG_ID_ACCESSIBILITY_BUTTON_TUTORIAL);
         }
         MagnificationPreferenceFragment.setChecked(getContentResolver(), preferenceKey, enabled);
         updateConfigurationWarningIfNeeded();
@@ -228,6 +240,13 @@
     }
 
     @Override
+    protected void updateSwitchBarText(SwitchBar switchBar) {
+        final String switchBarText = getString(R.string.accessibility_service_master_switch_title,
+                getString(R.string.accessibility_screen_magnification_title));
+        switchBar.setSwitchBarText(switchBarText, switchBarText);
+    }
+
+    @Override
     protected void onProcessArguments(Bundle arguments) {
         super.onProcessArguments(arguments);
         if (arguments == null) {
diff --git a/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java b/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java
index cac46b0..d895154 100644
--- a/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java
+++ b/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupController.java
@@ -141,11 +141,11 @@
         if (isAudioModeOngoingCall(mContext)) {
             // in phone call
             mPreferenceGroup.
-                    setTitle(mContext.getString(R.string.connected_device_available_call_title));
+                    setTitle(mContext.getString(R.string.connected_device_call_device_title));
         } else {
             // without phone call
             mPreferenceGroup.
-                    setTitle(mContext.getString(R.string.connected_device_available_media_title));
+                    setTitle(mContext.getString(R.string.connected_device_media_device_title));
         }
     }
 }
diff --git a/src/com/android/settings/slices/SlicePreference.java b/src/com/android/settings/slices/SlicePreference.java
index a2a7fe1..fe5ed60 100644
--- a/src/com/android/settings/slices/SlicePreference.java
+++ b/src/com/android/settings/slices/SlicePreference.java
@@ -46,6 +46,7 @@
         mSliceView = findViewById(R.id.slice_view);
         mSliceView.setShowTitleItems(true);
         mSliceView.setScrollable(false);
+        mSliceView.setVisibility(View.GONE);
     }
 
     public void onSliceUpdated(Slice slice) {
diff --git a/src/com/android/settings/slices/SlicePreferenceController.java b/src/com/android/settings/slices/SlicePreferenceController.java
index c31321d..df28304 100644
--- a/src/com/android/settings/slices/SlicePreferenceController.java
+++ b/src/com/android/settings/slices/SlicePreferenceController.java
@@ -32,7 +32,6 @@
 import com.android.settingslib.core.lifecycle.LifecycleObserver;
 import com.android.settingslib.core.lifecycle.events.OnStart;
 import com.android.settingslib.core.lifecycle.events.OnStop;
-import com.android.settingslib.utils.ThreadUtils;
 
 /**
  * Default {@link BasePreferenceController} for {@link SliceView}. It will take {@link Uri} for
@@ -66,9 +65,6 @@
         mUri = uri;
         mLiveData = SliceLiveData.fromUri(mContext, mUri, (int type, Throwable source) -> {
             Log.w(TAG, "Slice may be null. uri = " + uri + ", error = " + type);
-            ThreadUtils.postOnMainThread(() -> {
-                onChanged(null);
-            });
         });
 
         //TODO(b/120803703): figure out why we need to remove observer first
diff --git a/src/com/android/settings/widget/SwitchBar.java b/src/com/android/settings/widget/SwitchBar.java
index 0dd59e6..de0d98b 100644
--- a/src/com/android/settings/widget/SwitchBar.java
+++ b/src/com/android/settings/widget/SwitchBar.java
@@ -77,14 +77,12 @@
     private TextView mTextView;
     private String mLabel;
     private String mSummary;
+    private String mOnText;
+    private String mOffText;
     @ColorInt
     private int mBackgroundColor;
     @ColorInt
     private int mBackgroundActivatedColor;
-    @StringRes
-    private int mOnTextId;
-    @StringRes
-    private int mOffTextId;
 
     private boolean mLoggingIntialized;
     private boolean mDisabledByAdmin;
@@ -178,14 +176,20 @@
     }
 
     public void setTextViewLabelAndBackground(boolean isChecked) {
-        mLabel = getResources().getString(isChecked ? mOnTextId : mOffTextId);
+        mLabel = isChecked ? mOnText : mOffText;
         setBackgroundColor(isChecked ? mBackgroundActivatedColor : mBackgroundColor);
         updateText();
     }
 
-    public void setSwitchBarText(int onText, int offText) {
-        mOnTextId = onText;
-        mOffTextId = offText;
+    public void setSwitchBarText(int onTextId, int offTextId) {
+        mOnText = getResources().getString(onTextId);
+        mOffText = getResources().getString(offTextId);
+        setTextViewLabelAndBackground(isChecked());
+    }
+
+    public void setSwitchBarText(String onText, String offText) {
+        mOnText = onText;
+        mOffText = offText;
         setTextViewLabelAndBackground(isChecked());
     }
 
diff --git a/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceController.java b/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceController.java
index 81803dd..2315c9b 100644
--- a/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceController.java
+++ b/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceController.java
@@ -30,7 +30,6 @@
 import com.android.settingslib.wifi.AccessPointPreference.UserBadgeCache;
 import com.android.settingslib.wifi.WifiSavedConfigUtils;
 
-import java.util.Collections;
 import java.util.List;
 import java.util.stream.Collectors;
 
@@ -40,17 +39,14 @@
 public class SavedAccessPointsPreferenceController extends BasePreferenceController implements
         Preference.OnPreferenceClickListener {
 
-    private static final String TAG = "SavedApPrefCtrl";
-
-    private final WifiManager mWifiManager;
+    protected final WifiManager mWifiManager;
     private final UserBadgeCache mUserBadgeCache;
     private PreferenceGroup mPreferenceGroup;
     private SavedAccessPointsWifiSettings mHost;
     @VisibleForTesting
     List<AccessPoint> mAccessPoints;
 
-    public SavedAccessPointsPreferenceController(Context context,
-            String preferenceKey) {
+    public SavedAccessPointsPreferenceController(Context context, String preferenceKey) {
         super(context, preferenceKey);
         mUserBadgeCache = new AccessPointPreference.UserBadgeCache(context.getPackageManager());
         mWifiManager = context.getSystemService(WifiManager.class);
@@ -84,7 +80,7 @@
         return false;
     }
 
-    private void refreshSavedAccessPoints() {
+    protected void refreshSavedAccessPoints() {
         mAccessPoints = WifiSavedConfigUtils.getAllConfigs(mContext, mWifiManager).stream()
                 .filter(accessPoint -> !accessPoint.isPasspointConfig())
                 .sorted(SavedNetworkComparator.INSTANCE)
diff --git a/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceController.java b/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceController.java
index 4d7dc60..b86113e 100644
--- a/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceController.java
+++ b/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceController.java
@@ -17,92 +17,26 @@
 package com.android.settings.wifi.savedaccesspoints;
 
 import android.content.Context;
-import android.net.wifi.WifiManager;
 
-import androidx.annotation.VisibleForTesting;
-import androidx.preference.Preference;
-import androidx.preference.PreferenceGroup;
-import androidx.preference.PreferenceScreen;
-
-import com.android.settings.core.BasePreferenceController;
-import com.android.settingslib.wifi.AccessPoint;
-import com.android.settingslib.wifi.AccessPointPreference;
-import com.android.settingslib.wifi.AccessPointPreference.UserBadgeCache;
 import com.android.settingslib.wifi.WifiSavedConfigUtils;
 
-import java.util.Collections;
-import java.util.List;
 import java.util.stream.Collectors;
 
 /**
  * Controller that manages a PreferenceGroup, which contains a list of subscribed access points.
  */
-public class SubscribedAccessPointsPreferenceController extends BasePreferenceController implements
-        Preference.OnPreferenceClickListener {
+public class SubscribedAccessPointsPreferenceController extends
+        SavedAccessPointsPreferenceController {
 
-    private static final String TAG = "SubscribedApPrefCtrl";
-
-    private final WifiManager mWifiManager;
-    private final UserBadgeCache mUserBadgeCache;
-    private PreferenceGroup mPreferenceGroup;
-    private SavedAccessPointsWifiSettings mHost;
-    @VisibleForTesting
-    List<AccessPoint> mAccessPoints;
-
-    public SubscribedAccessPointsPreferenceController(Context context,
-            String preferenceKey) {
+    public SubscribedAccessPointsPreferenceController(Context context, String preferenceKey) {
         super(context, preferenceKey);
-        mUserBadgeCache = new AccessPointPreference.UserBadgeCache(context.getPackageManager());
-        mWifiManager = context.getSystemService(WifiManager.class);
-    }
-
-    public SubscribedAccessPointsPreferenceController setHost(SavedAccessPointsWifiSettings host) {
-        mHost = host;
-        return this;
     }
 
     @Override
-    public int getAvailabilityStatus() {
-        return mAccessPoints.size() > 0 ? AVAILABLE : CONDITIONALLY_UNAVAILABLE;
-    }
-
-    @Override
-    public void displayPreference(PreferenceScreen screen) {
-        mPreferenceGroup = screen.findPreference(getPreferenceKey());
-        refreshSubscribedAccessPoints();
-        updatePreference();
-        super.displayPreference(screen);
-    }
-
-    @Override
-    public boolean onPreferenceClick(Preference preference) {
-        if (mHost != null) {
-            final Preference preferenceInGroup =
-                    mPreferenceGroup.findPreference(preference.getKey());
-            mHost.showWifiPage((AccessPointPreference) preferenceInGroup);
-        }
-        return false;
-    }
-
-    private void refreshSubscribedAccessPoints() {
+    protected void refreshSavedAccessPoints() {
         mAccessPoints = WifiSavedConfigUtils.getAllConfigs(mContext, mWifiManager).stream()
                 .filter(accessPoint -> accessPoint.isPasspointConfig())
                 .sorted(SavedNetworkComparator.INSTANCE)
                 .collect(Collectors.toList());
     }
-
-    private void updatePreference() {
-        mPreferenceGroup.removeAll();
-        for (AccessPoint accessPoint : mAccessPoints) {
-            final String key = accessPoint.getKey();
-
-            final AccessPointPreference preference = new AccessPointPreference(accessPoint,
-                    mContext, mUserBadgeCache, true /* forSavedNetworks */);
-            preference.setKey(key);
-            preference.setIcon(null);
-            preference.setOnPreferenceClickListener(this);
-
-            mPreferenceGroup.addPreference(preference);
-        }
-    }
 }
diff --git a/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java b/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java
index c4b5901..ad630ff 100644
--- a/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java
+++ b/tests/robotests/src/com/android/settings/connecteddevice/AvailableMediaDeviceGroupControllerTest.java
@@ -193,7 +193,7 @@
         mAvailableMediaDeviceGroupController.onAudioModeChanged();
 
         assertThat(mPreferenceGroup.getTitle()).isEqualTo(
-                mContext.getText(R.string.connected_device_available_call_title));
+                mContext.getText(R.string.connected_device_call_device_title));
     }
 
     @Test
@@ -202,7 +202,7 @@
         mAvailableMediaDeviceGroupController.onAudioModeChanged();
 
         assertThat(mPreferenceGroup.getTitle()).isEqualTo(
-                mContext.getText(R.string.connected_device_available_media_title));
+                mContext.getText(R.string.connected_device_media_device_title));
     }
 
     @Test
diff --git a/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java b/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java
index f186222..31cb966 100644
--- a/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java
+++ b/tests/robotests/src/com/android/settings/widget/SwitchBarTest.java
@@ -85,6 +85,24 @@
     }
 
     @Test
+    public void setCheck_customLabelWithStringType_shouldUpdateTextAndBackground() {
+        final String onText = mContext.getString(
+                R.string.accessibility_service_master_switch_title);
+        final String offText = mContext.getString(
+                R.string.accessibility_service_master_switch_title);
+        final TextView switchBarTextView = ((TextView) mBar.findViewById(R.id.switch_text));
+
+        mBar.setSwitchBarText(onText, offText);
+
+        assertThat(switchBarTextView.getText()).isEqualTo(offText);
+
+        mBar.setChecked(true);
+
+        assertThat(mBar.getBackground()).isInstanceOf(ColorDrawable.class);
+        assertThat(switchBarTextView.getText()).isEqualTo(onText);
+    }
+
+    @Test
     public void disabledByAdmin_shouldDelegateToRestrictedIcon() {
         mBar.setDisabledByAdmin(new EnforcedAdmin());
         assertThat(mBar.getDelegatingView().getId()).isEqualTo(R.id.restricted_icon);
diff --git a/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceControllerTest.java
index 73e1297..e955224 100644
--- a/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SavedAccessPointsPreferenceControllerTest.java
@@ -98,7 +98,7 @@
 
     @Test
     @Config(shadows = ShadowAccessPoint.class)
-    public void refreshSavedAccessPoints_shouldListNonSubscribedAPs() {
+    public void displayPreference_oneAccessPoint_shouldListNonSubscribedAPs() {
         final WifiConfiguration config = new WifiConfiguration();
         config.SSID = "SSID";
         config.BSSID = "BSSID";
@@ -117,7 +117,7 @@
 
     @Test
     @Config(shadows = ShadowAccessPoint.class)
-    public void refreshSavedAccessPoints_shouldNotListSubscribedAPs() {
+    public void displayPreference_onePasspoint_shouldNotListSubscribedAPs() {
         mWifiManager.addOrUpdatePasspointConfiguration(
                 SubscribedAccessPointsPreferenceControllerTest.createMockPasspointConfiguration());
 
diff --git a/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceControllerTest.java b/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceControllerTest.java
index f9307db..b28498b 100644
--- a/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceControllerTest.java
+++ b/tests/robotests/src/com/android/settings/wifi/savedaccesspoints/SubscribedAccessPointsPreferenceControllerTest.java
@@ -16,9 +16,6 @@
 
 package com.android.settings.wifi.savedaccesspoints;
 
-import static com.android.settings.core.BasePreferenceController.AVAILABLE;
-import static com.android.settings.core.BasePreferenceController.CONDITIONALLY_UNAVAILABLE;
-
 import static com.google.common.truth.Truth.assertThat;
 
 import static org.mockito.ArgumentMatchers.any;
@@ -32,7 +29,6 @@
 import android.net.wifi.WifiManager;
 import android.net.wifi.hotspot2.PasspointConfiguration;
 import android.net.wifi.hotspot2.pps.HomeSp;
-import android.os.Bundle;
 
 import androidx.preference.PreferenceCategory;
 import androidx.preference.PreferenceScreen;
@@ -42,9 +38,6 @@
 import com.android.settingslib.wifi.AccessPoint;
 import com.android.settingslib.wifi.AccessPointPreference;
 
-import java.util.ArrayList;
-import java.util.Arrays;
-
 import org.junit.Before;
 import org.junit.Test;
 import org.junit.runner.RunWith;
@@ -84,23 +77,8 @@
     }
 
     @Test
-    public void getAvailability_noSavedAccessPoint_shouldNotAvailable() {
-        mController.mAccessPoints = new ArrayList<>();
-
-        assertThat(mController.getAvailabilityStatus()).isEqualTo(CONDITIONALLY_UNAVAILABLE);
-    }
-
-    @Test
-    public void getAvailability_oneSavedAccessPoint_shouldAvailable() {
-        final AccessPoint accessPoint = new AccessPoint(mContext, new Bundle() /* savedState */);
-        mController.mAccessPoints = new ArrayList<AccessPoint>(Arrays.asList(accessPoint));
-
-        assertThat(mController.getAvailabilityStatus()).isEqualTo(AVAILABLE);
-    }
-
-    @Test
     @Config(shadows = ShadowAccessPoint.class)
-    public void refreshSubscribedAccessPoints_shouldNotListNonSubscribedAPs() {
+    public void displayPreference_oneAccessPoint_shouldNotListNonSubscribedAPs() {
         final WifiConfiguration config = new WifiConfiguration();
         config.SSID = "SSID";
         config.BSSID = "BSSID";
@@ -114,7 +92,7 @@
 
     @Test
     @Config(shadows = ShadowAccessPoint.class)
-    public void refreshSubscribedAccessPoints_shouldListSubscribedAPs() {
+    public void displayPreference_onePasspoint_shouldListSubscribedAPs() {
         mWifiManager.addOrUpdatePasspointConfiguration(createMockPasspointConfiguration());
 
         mController.displayPreference(mPreferenceScreen);