diff options
Diffstat (limited to 'src/com/android/settings/deviceinfo/StorageSettings.java')
-rw-r--r-- | src/com/android/settings/deviceinfo/StorageSettings.java | 35 |
1 files changed, 25 insertions, 10 deletions
diff --git a/src/com/android/settings/deviceinfo/StorageSettings.java b/src/com/android/settings/deviceinfo/StorageSettings.java index 209346913b..17a06dff09 100644 --- a/src/com/android/settings/deviceinfo/StorageSettings.java +++ b/src/com/android/settings/deviceinfo/StorageSettings.java @@ -48,6 +48,7 @@ import com.android.internal.logging.nano.MetricsProto.MetricsEvent; import com.android.settings.R; import com.android.settings.SettingsPreferenceFragment; import com.android.settings.Utils; +import com.android.settings.core.SubSettingLauncher; import com.android.settings.core.instrumentation.InstrumentedDialogFragment; import com.android.settings.dashboard.SummaryLoader; import com.android.settings.search.BaseSearchIndexProvider; @@ -56,9 +57,7 @@ import com.android.settings.search.SearchIndexableRaw; import com.android.settingslib.RestrictedLockUtils; import com.android.settingslib.deviceinfo.PrivateStorageInfo; import com.android.settingslib.deviceinfo.StorageManagerVolumeProvider; -import com.android.settingslib.drawer.SettingsDrawerActivity; -import java.io.File; import java.text.NumberFormat; import java.util.ArrayList; import java.util.Collections; @@ -279,15 +278,23 @@ public class StorageSettings extends SettingsPreferenceFragment implements Index args.putString(VolumeInfo.EXTRA_VOLUME_ID, vol.getId()); if (VolumeInfo.ID_PRIVATE_INTERNAL.equals(vol.getId())) { - startFragment(this, StorageDashboardFragment.class.getCanonicalName(), - R.string.storage_settings, 0, args); + new SubSettingLauncher(getContext()) + .setDestination(StorageDashboardFragment.class.getCanonicalName()) + .setTitle(R.string.storage_settings) + .setSourceMetricsCategory(getMetricsCategory()) + .setArguments(args) + .launch(); } else { // TODO: Go to the StorageDashboardFragment once it fully handles all of the // SD card cases and other private internal storage cases. PrivateVolumeSettings.setVolumeSize(args, PrivateStorageInfo.getTotalSize(vol, sTotalInternalStorage)); - startFragment(this, PrivateVolumeSettings.class.getCanonicalName(), - -1, 0, args); + new SubSettingLauncher(getContext()) + .setDestination(PrivateVolumeSettings.class.getCanonicalName()) + .setTitle(-1) + .setSourceMetricsCategory(getMetricsCategory()) + .setArguments(args) + .launch(); } return true; @@ -299,8 +306,12 @@ public class StorageSettings extends SettingsPreferenceFragment implements Index } else { final Bundle args = new Bundle(); args.putString(VolumeInfo.EXTRA_VOLUME_ID, vol.getId()); - startFragment(this, PublicVolumeSettings.class.getCanonicalName(), - -1, 0, args); + new SubSettingLauncher(getContext()) + .setDestination(PublicVolumeSettings.class.getCanonicalName()) + .setTitle(-1) + .setSourceMetricsCategory(getMetricsCategory()) + .setArguments(args) + .launch(); return true; } } @@ -314,8 +325,12 @@ public class StorageSettings extends SettingsPreferenceFragment implements Index // Picked a missing private volume final Bundle args = new Bundle(); args.putString(VolumeRecord.EXTRA_FS_UUID, key); - startFragment(this, PrivateVolumeForget.class.getCanonicalName(), - R.string.storage_menu_forget, 0, args); + new SubSettingLauncher(getContext()) + .setDestination(PrivateVolumeForget.class.getCanonicalName()) + .setTitle(R.string.storage_menu_forget) + .setSourceMetricsCategory(getMetricsCategory()) + .setArguments(args) + .launch(); return true; } |