Migrate more settings to use SubSettingsLauncher

Bug: 73250851
Test: robotests
Change-Id: I08f6f380489646231d6d8ceb1488e2efb036bf69
diff --git a/src/com/android/settings/MasterClear.java b/src/com/android/settings/MasterClear.java
index 4f5c6b9..f66b1f9 100644
--- a/src/com/android/settings/MasterClear.java
+++ b/src/com/android/settings/MasterClear.java
@@ -56,6 +56,7 @@
 
 import com.android.internal.logging.nano.MetricsProto.MetricsEvent;
 import com.android.settings.core.InstrumentedFragment;
+import com.android.settings.core.SubSettingLauncher;
 import com.android.settings.password.ChooseLockSettingsHelper;
 import com.android.settings.password.ConfirmLockPattern;
 import com.android.settingslib.RestrictedLockUtils;
@@ -156,12 +157,15 @@
 
     @VisibleForTesting
     void showFinalConfirmation() {
-        Bundle args = new Bundle();
+        final Bundle args = new Bundle();
         args.putBoolean(ERASE_EXTERNAL_EXTRA, mExternalStorage.isChecked());
         args.putBoolean(ERASE_ESIMS_EXTRA, mEsimStorage.isChecked());
-        ((SettingsActivity) getActivity()).startPreferencePanel(
-                this, MasterClearConfirm.class.getName(),
-                args, R.string.master_clear_confirm_title, null, null, 0);
+        new SubSettingLauncher(getContext())
+                .setDestination(MasterClearConfirm.class.getName())
+                .setArguments(args)
+                .setTitle(R.string.master_clear_confirm_title)
+                .setSourceMetricsCategory(getMetricsCategory())
+                .launch();
     }
 
     @VisibleForTesting