diff --git a/res/values/strings.xml b/res/values/strings.xml
index 02d92ecaae4..5c57f83bc46 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -6460,6 +6460,12 @@
Storage used
+
+ Change
+
+
+ Change storage
+
Notifications
diff --git a/res/xml/app_storage_settings.xml b/res/xml/app_storage_settings.xml
index 7c5c25ce8b6..093d7812b66 100644
--- a/res/xml/app_storage_settings.xml
+++ b/res/xml/app_storage_settings.xml
@@ -17,11 +17,19 @@
-
+
+
+ android:selectable="false"
+ android:layout="@layout/horizontal_preference" />
+
+
1) {
Collections.sort(candidates, VolumeInfo.getDescriptionComparator());
- mMoveDropDown.clearItems();
- for (VolumeInfo vol : candidates) {
- final String volDescrip = storage.getBestVolumeDescription(vol);
- mMoveDropDown.addItem(volDescrip, vol);
+ CharSequence[] labels = new CharSequence[candidates.size()];
+ int current = -1;
+ for (int i = 0; i < candidates.size(); i++) {
+ final String volDescrip = storage.getBestVolumeDescription(candidates.get(i));
+ if (Objects.equals(volDescrip, mStorageUsed.getSummary())) {
+ current = i;
+ }
+ labels[i] = volDescrip;
}
- mMoveDropDown.setSelectable(!mAppControlRestricted);
+ mCandidates = candidates.toArray(new VolumeInfo[candidates.size()]);
+ mDialogBuilder = new AlertDialog.Builder(getContext())
+ .setTitle(R.string.change_storage)
+ .setSingleChoiceItems(labels, current, this)
+ .setNegativeButton(R.string.cancel, null);
} else {
- removePreference(KEY_MOVE_PREFERENCE);
+ removePreference(KEY_STORAGE_USED);
+ removePreference(KEY_CHANGE_STORAGE);
}
}