Merge "Fixed calls to update() when configuration changed." into nyc-dev

This commit is contained in:
TreeHugger Robot
2016-05-13 17:35:20 +00:00
committed by Android (Google) Code Review

View File

@@ -117,7 +117,7 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
private Preference mExplore; private Preference mExplore;
private boolean mDetached; private boolean mNeedsUpdate;
private boolean isVolumeValid() { private boolean isVolumeValid() {
return (mVolume != null) && (mVolume.getType() == VolumeInfo.TYPE_PRIVATE) return (mVolume != null) && (mVolume.getType() == VolumeInfo.TYPE_PRIVATE)
@@ -164,18 +164,22 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
mExplore = buildAction(R.string.storage_menu_explore); mExplore = buildAction(R.string.storage_menu_explore);
mDetached = false; mNeedsUpdate = true;
setHasOptionsMenu(true); setHasOptionsMenu(true);
} }
private void setTitle() {
getActivity().setTitle(mStorageManager.getBestVolumeDescription(mVolume));
}
private void update() { private void update() {
if (!isVolumeValid()) { if (!isVolumeValid()) {
getActivity().finish(); getActivity().finish();
return; return;
} }
getActivity().setTitle(mStorageManager.getBestVolumeDescription(mVolume)); setTitle();
// Valid options may have changed // Valid options may have changed
getFragmentManager().invalidateOptionsMenu(); getFragmentManager().invalidateOptionsMenu();
@@ -238,6 +242,7 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
mSummary.setPercent((int) ((usedBytes * 100) / totalBytes)); mSummary.setPercent((int) ((usedBytes * 100) / totalBytes));
mMeasure.forceMeasure(); mMeasure.forceMeasure();
mNeedsUpdate = false;
} }
private void addPreference(PreferenceGroup group, Preference pref) { private void addPreference(PreferenceGroup group, Preference pref) {
@@ -314,8 +319,10 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
mStorageManager.registerListener(mStorageListener); mStorageManager.registerListener(mStorageListener);
if (!mDetached) { if (mNeedsUpdate) {
update(); update();
} else {
setTitle();
} }
} }
@@ -325,25 +332,12 @@ public class PrivateVolumeSettings extends SettingsPreferenceFragment {
mStorageManager.unregisterListener(mStorageListener); mStorageManager.unregisterListener(mStorageListener);
} }
@Override
public void onAttach(Context context) {
super.onAttach(context);
mDetached = false;
}
@Override
public void onDetach() {
super.onDetach();
mDetached = true;
}
@Override @Override
public void onDestroy() { public void onDestroy() {
super.onDestroy(); super.onDestroy();
if (mMeasure != null) { if (mMeasure != null) {
mMeasure.onDestroy(); mMeasure.onDestroy();
} }
mDetached = false;
} }
@Override @Override