Fix dream settings initial state.

The empty view wasn't being updated initially by the fragment
so it was being left in an empty state since no preferences are
added after the fact.

Bug: 25609200
Change-Id: Ib9aa02ba94bf7077d01892d96d79d39203047f4d
This commit is contained in:
Jason Monk
2016-01-30 12:15:11 -05:00
parent 7368750b4f
commit 77467e04d4
2 changed files with 8 additions and 5 deletions

View File

@@ -258,8 +258,9 @@ public class DreamSettings extends SettingsPreferenceFragment implements
logd("refreshFromBackend()");
mRefreshing = true;
boolean dreamsEnabled = mBackend.isEnabled();
if (mSwitchBar.isChecked() != dreamsEnabled)
if (mSwitchBar.isChecked() != dreamsEnabled) {
mSwitchBar.setChecked(dreamsEnabled);
}
if (getPreferenceScreen() == null) {
setPreferenceScreen(getPreferenceManager().createPreferenceScreen(getContext()));
@@ -273,15 +274,16 @@ public class DreamSettings extends SettingsPreferenceFragment implements
new DreamInfoPreference(getPrefContext(), dreamInfos.get(i)));
}
}
if (mMenuItemsWhenEnabled != null)
for (MenuItem menuItem : mMenuItemsWhenEnabled)
if (mMenuItemsWhenEnabled != null) {
for (MenuItem menuItem : mMenuItemsWhenEnabled) {
menuItem.setEnabled(dreamsEnabled);
}
}
mRefreshing = false;
}
private static void logd(String msg, Object... args) {
if (DEBUG)
Log.d(TAG, args == null || args.length == 0 ? msg : String.format(msg, args));
if (DEBUG) Log.d(TAG, args == null || args.length == 0 ? msg : String.format(msg, args));
}
private class DreamInfoPreference extends Preference {