summaryrefslogtreecommitdiffstats
path: root/src/com/android/settings/deviceinfo/StorageWizardMigrateConfirm.java
diff options
context:
space:
mode:
Diffstat (limited to 'src/com/android/settings/deviceinfo/StorageWizardMigrateConfirm.java')
-rw-r--r--src/com/android/settings/deviceinfo/StorageWizardMigrateConfirm.java40
1 files changed, 29 insertions, 11 deletions
diff --git a/src/com/android/settings/deviceinfo/StorageWizardMigrateConfirm.java b/src/com/android/settings/deviceinfo/StorageWizardMigrateConfirm.java
index 9aa1441..daa76d7 100644
--- a/src/com/android/settings/deviceinfo/StorageWizardMigrateConfirm.java
+++ b/src/com/android/settings/deviceinfo/StorageWizardMigrateConfirm.java
@@ -17,36 +17,54 @@
package com.android.settings.deviceinfo;
import android.content.Intent;
+import android.content.pm.PackageManager;
import android.os.Bundle;
-import android.os.storage.DiskInfo;
-import android.text.format.DateUtils;
-import android.text.format.Formatter;
+import android.os.storage.VolumeInfo;
-import com.android.internal.util.Preconditions;
import com.android.settings.R;
public class StorageWizardMigrateConfirm extends StorageWizardBase {
+ private MigrateEstimateTask mEstimate;
+
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.storage_wizard_generic);
- Preconditions.checkNotNull(mDisk);
+ // When called with just disk, find the first private volume
+ if (mVolume == null) {
+ mVolume = findFirstVolume(VolumeInfo.TYPE_PRIVATE);
+ }
+
+ final VolumeInfo sourceVol = getPackageManager().getPrimaryStorageCurrentVolume();
+ final String sourceDescrip = mStorage.getBestVolumeDescription(sourceVol);
+ final String targetDescrip = mStorage.getBestVolumeDescription(mVolume);
- final String time = DateUtils.formatDuration(0).toString();
- final String size = Formatter.formatFileSize(this, 0);
+ setHeaderText(R.string.storage_wizard_migrate_confirm_title, targetDescrip);
+ setBodyText(R.string.memory_calculating_size);
+ setSecondaryBodyText(R.string.storage_wizard_migrate_details, targetDescrip);
- setHeaderText(R.string.storage_wizard_migrate_confirm_title, mDisk.getDescription());
- setBodyText(R.string.storage_wizard_migrate_confirm_body, time, size);
- setSecondaryBodyText(R.string.storage_wizard_migrate_details, mDisk.getDescription());
+ mEstimate = new MigrateEstimateTask(this) {
+ @Override
+ public void onPostExecute(String size, String time) {
+ setBodyText(R.string.storage_wizard_migrate_confirm_body, time, size,
+ sourceDescrip);
+ }
+ };
+
+ mEstimate.copyFrom(getIntent());
+ mEstimate.execute();
getNextButton().setText(R.string.storage_wizard_migrate_confirm_next);
}
@Override
public void onNavigateNext() {
+ final int moveId = getPackageManager().movePrimaryStorage(mVolume);
+
final Intent intent = new Intent(this, StorageWizardMigrateProgress.class);
- intent.putExtra(DiskInfo.EXTRA_DISK_ID, mDisk.getId());
+ intent.putExtra(VolumeInfo.EXTRA_VOLUME_ID, mVolume.getId());
+ intent.putExtra(PackageManager.EXTRA_MOVE_ID, moveId);
startActivity(intent);
finishAffinity();
}