Revert "Unable to select twilight scheduling after enabling location"

This reverts commit 9073b2f968.
Bug: 153115261
Reason for revert: this CL make Settings robolectric test fail at com.android.settings.display.darkmode.DarkModeScheduleSelectorControllerTest

Change-Id: I3f1ba35f55f2905b10ca97149268be6074780eda
This commit is contained in:
Edgar Wang
2020-05-13 03:58:36 +00:00
parent 9073b2f968
commit 782438347b
2 changed files with 9 additions and 9 deletions

View File

@@ -74,7 +74,7 @@ public class NightDisplayAutoModePreferenceController extends BasePreferenceCont
if (String.valueOf(ColorDisplayManager.AUTO_MODE_TWILIGHT).equals(newValue) if (String.valueOf(ColorDisplayManager.AUTO_MODE_TWILIGHT).equals(newValue)
&& !mLocationManager.isLocationEnabled()) { && !mLocationManager.isLocationEnabled()) {
TwilightLocationDialog.show(mContext); TwilightLocationDialog.show(mContext);
return true; return false;
} }
return mColorDisplayManager.setNightDisplayAutoMode(Integer.parseInt((String) newValue)); return mColorDisplayManager.setNightDisplayAutoMode(Integer.parseInt((String) newValue));
} }

View File

@@ -33,7 +33,7 @@ import com.android.settings.display.TwilightLocationDialog;
*/ */
public class DarkModeScheduleSelectorController extends BasePreferenceController public class DarkModeScheduleSelectorController extends BasePreferenceController
implements Preference.OnPreferenceChangeListener { implements Preference.OnPreferenceChangeListener {
private static final String TAG = DarkModeScheduleSelectorController.class.getSimpleName();
private final UiModeManager mUiModeManager; private final UiModeManager mUiModeManager;
private PowerManager mPowerManager; private PowerManager mPowerManager;
private DropDownPreference mPreference; private DropDownPreference mPreference;
@@ -51,6 +51,7 @@ public class DarkModeScheduleSelectorController extends BasePreferenceController
public void displayPreference(PreferenceScreen screen) { public void displayPreference(PreferenceScreen screen) {
super.displayPreference(screen); super.displayPreference(screen);
mPreference = screen.findPreference(getPreferenceKey()); mPreference = screen.findPreference(getPreferenceKey());
init();
} }
@Override @Override
@@ -58,8 +59,7 @@ public class DarkModeScheduleSelectorController extends BasePreferenceController
return BasePreferenceController.AVAILABLE; return BasePreferenceController.AVAILABLE;
} }
@Override private void init() {
public final void updateState(Preference preference) {
final boolean batterySaver = mPowerManager.isPowerSaveMode(); final boolean batterySaver = mPowerManager.isPowerSaveMode();
mPreference.setEnabled(!batterySaver); mPreference.setEnabled(!batterySaver);
mCurrentMode = getCurrentMode(); mCurrentMode = getCurrentMode();
@@ -87,25 +87,25 @@ public class DarkModeScheduleSelectorController extends BasePreferenceController
if (newMode == mCurrentMode) { if (newMode == mCurrentMode) {
return false; return false;
} }
if (newMode == mPreference.findIndexOfValue( mCurrentMode = newMode;
if (mCurrentMode == mPreference.findIndexOfValue(
mContext.getString(R.string.dark_ui_auto_mode_never))) { mContext.getString(R.string.dark_ui_auto_mode_never))) {
boolean active = (mContext.getResources().getConfiguration().uiMode boolean active = (mContext.getResources().getConfiguration().uiMode
& Configuration.UI_MODE_NIGHT_YES) != 0; & Configuration.UI_MODE_NIGHT_YES) != 0;
int mode = active ? UiModeManager.MODE_NIGHT_YES int mode = active ? UiModeManager.MODE_NIGHT_YES
: UiModeManager.MODE_NIGHT_NO; : UiModeManager.MODE_NIGHT_NO;
mUiModeManager.setNightMode(mode); mUiModeManager.setNightMode(mode);
} else if (newMode == mPreference.findIndexOfValue( } else if (mCurrentMode == mPreference.findIndexOfValue(
mContext.getString(R.string.dark_ui_auto_mode_auto))) { mContext.getString(R.string.dark_ui_auto_mode_auto))) {
if (!mLocationManager.isLocationEnabled()) { if (!mLocationManager.isLocationEnabled()) {
TwilightLocationDialog.show(mContext); TwilightLocationDialog.show(mContext);
return true; return false;
} }
mUiModeManager.setNightMode(UiModeManager.MODE_NIGHT_AUTO); mUiModeManager.setNightMode(UiModeManager.MODE_NIGHT_AUTO);
} else if (newMode == mPreference.findIndexOfValue( } else if (mCurrentMode == mPreference.findIndexOfValue(
mContext.getString(R.string.dark_ui_auto_mode_custom))) { mContext.getString(R.string.dark_ui_auto_mode_custom))) {
mUiModeManager.setNightMode(UiModeManager.MODE_NIGHT_CUSTOM); mUiModeManager.setNightMode(UiModeManager.MODE_NIGHT_CUSTOM);
} }
mCurrentMode = newMode;
return true; return true;
} }
} }