am d2a6f28f: Disable option to format SD card for secondary external storage

* commit 'd2a6f28fa7ba8189d2a1987129db27fd840fac0f':
  Disable option to format SD card for secondary external storage
This commit is contained in:
Mike Lockwood
2011-06-13 04:25:51 -07:00
committed by Android Git Automerger

View File

@@ -63,6 +63,8 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen
private StorageMeasurement mMeasurement;
private boolean mAllowFormat;
static class CategoryInfo {
final int mTitle;
final int mColor;
@@ -163,6 +165,12 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen
setTitle(storageVolume.getDescription());
mMeasurement = StorageMeasurement.getInstance(context, storageVolume, isPrimary);
mMeasurement.setReceiver(this);
// Cannot format emulated storage
mAllowFormat = !mStorageVolume.isEmulated();
// For now we are disabling reformatting secondary external storage
// until some interoperability problems with MTP are fixed
if (!isPrimary) mAllowFormat = false;
}
public void init() {
@@ -190,10 +198,12 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen
mMountTogglePreference.setTitle(R.string.sd_eject);
mMountTogglePreference.setSummary(R.string.sd_eject_summary);
if (mAllowFormat) {
mFormatPreference = new Preference(getContext());
mFormatPreference.setTitle(R.string.sd_format);
mFormatPreference.setSummary(R.string.sd_format_summary);
}
}
public StorageVolume getStorageVolume() {
return mStorageVolume;
@@ -211,14 +221,18 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen
removePreference(mPreferences[i]);
}
removePreference(mMountTogglePreference);
if (mFormatPreference != null) {
removePreference(mFormatPreference);
}
addPreference(mUsageBarPreference);
for (int i = 0; i < numberOfCategories; i++) {
addPreference(mPreferences[i]);
}
addPreference(mMountTogglePreference);
if (mFormatPreference != null) {
addPreference(mFormatPreference);
}
mMountTogglePreference.setEnabled(true);
}
@@ -232,10 +246,12 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen
if (Environment.MEDIA_MOUNTED_READ_ONLY.equals(state)) {
state = Environment.MEDIA_MOUNTED;
readOnly = mResources.getString(R.string.read_only);
if (mFormatPreference != null) {
removePreference(mFormatPreference);
}
}
if (mStorageVolume.isEmulated()) {
if (mFormatPreference != null) {
removePreference(mFormatPreference);
}
@@ -266,9 +282,11 @@ public class StorageVolumePreferenceCategory extends PreferenceCategory implemen
removePreference(mUsageBarPreference);
removePreference(mPreferences[TOTAL_SIZE]);
removePreference(mPreferences[AVAILABLE]);
if (mFormatPreference != null) {
removePreference(mFormatPreference);
}
}
}
public void updateApproximate(long totalSize, long availSize) {
mPreferences[TOTAL_SIZE].setSummary(formatSize(totalSize));