Use ColorDisplayManager for night display settings
Bug: 123352608 Test: make ROBOTEST_FILTER="(Night*)" RunSettingsRoboTests -j48 Change-Id: Id4ab9ca4a21243be5967d63db72212daefb3dcb9
This commit is contained in:
@@ -26,14 +26,13 @@ import android.widget.Button;
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.internal.app.ColorDisplayController;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.TogglePreferenceController;
|
||||
import com.android.settingslib.widget.LayoutPreference;
|
||||
|
||||
public class NightDisplayActivationPreferenceController extends TogglePreferenceController {
|
||||
|
||||
private ColorDisplayController mController;
|
||||
private ColorDisplayManager mColorDisplayManager;
|
||||
private NightDisplayTimeFormatter mTimeFormatter;
|
||||
private Button mTurnOffButton;
|
||||
private Button mTurnOnButton;
|
||||
@@ -41,14 +40,15 @@ public class NightDisplayActivationPreferenceController extends TogglePreference
|
||||
private final OnClickListener mListener = new OnClickListener() {
|
||||
@Override
|
||||
public void onClick(View v) {
|
||||
mController.setActivated(!mController.isActivated());
|
||||
mColorDisplayManager.setNightDisplayActivated(!mColorDisplayManager.isNightDisplayActivated());
|
||||
updateStateInternal();
|
||||
}
|
||||
};
|
||||
|
||||
public NightDisplayActivationPreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
mController = new ColorDisplayController(context);
|
||||
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
mTimeFormatter = new NightDisplayTimeFormatter(context);
|
||||
}
|
||||
|
||||
@@ -83,17 +83,17 @@ public class NightDisplayActivationPreferenceController extends TogglePreference
|
||||
|
||||
@Override
|
||||
public boolean isChecked() {
|
||||
return mController.isActivated();
|
||||
return mColorDisplayManager.isNightDisplayActivated();
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean setChecked(boolean isChecked) {
|
||||
return mController.setActivated(isChecked);
|
||||
return mColorDisplayManager.setNightDisplayActivated(isChecked);
|
||||
}
|
||||
|
||||
@Override
|
||||
public CharSequence getSummary() {
|
||||
return mTimeFormatter.getAutoModeTimeSummary(mContext, mController);
|
||||
return mTimeFormatter.getAutoModeTimeSummary(mContext, mColorDisplayManager);
|
||||
}
|
||||
|
||||
private void updateStateInternal() {
|
||||
@@ -101,8 +101,8 @@ public class NightDisplayActivationPreferenceController extends TogglePreference
|
||||
return;
|
||||
}
|
||||
|
||||
final boolean isActivated = mController.isActivated();
|
||||
final int autoMode = mController.getAutoMode();
|
||||
final boolean isActivated = mColorDisplayManager.isNightDisplayActivated();
|
||||
final int autoMode = mColorDisplayManager.getNightDisplayAutoMode();
|
||||
|
||||
String buttonText;
|
||||
if (autoMode == ColorDisplayManager.AUTO_MODE_CUSTOM_TIME) {
|
||||
@@ -110,8 +110,8 @@ public class NightDisplayActivationPreferenceController extends TogglePreference
|
||||
? R.string.night_display_activation_off_custom
|
||||
: R.string.night_display_activation_on_custom,
|
||||
mTimeFormatter.getFormattedTimeString(isActivated
|
||||
? mController.getCustomStartTime()
|
||||
: mController.getCustomEndTime()));
|
||||
? mColorDisplayManager.getNightDisplayCustomStartTime()
|
||||
: mColorDisplayManager.getNightDisplayCustomEndTime()));
|
||||
} else if (autoMode == ColorDisplayManager.AUTO_MODE_TWILIGHT) {
|
||||
buttonText = mContext.getString(isActivated
|
||||
? R.string.night_display_activation_off_twilight
|
||||
|
@@ -30,11 +30,11 @@ public class NightDisplayAutoModePreferenceController extends BasePreferenceCont
|
||||
implements Preference.OnPreferenceChangeListener {
|
||||
|
||||
private DropDownPreference mPreference;
|
||||
private ColorDisplayManager mManager;
|
||||
private ColorDisplayManager mColorDisplayManager;
|
||||
|
||||
public NightDisplayAutoModePreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
mManager = context.getSystemService(ColorDisplayManager.class);
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -63,11 +63,11 @@ public class NightDisplayAutoModePreferenceController extends BasePreferenceCont
|
||||
|
||||
@Override
|
||||
public final void updateState(Preference preference) {
|
||||
mPreference.setValue(String.valueOf(mManager.getNightDisplayAutoMode()));
|
||||
mPreference.setValue(String.valueOf(mColorDisplayManager.getNightDisplayAutoMode()));
|
||||
}
|
||||
|
||||
@Override
|
||||
public final boolean onPreferenceChange(Preference preference, Object newValue) {
|
||||
return mManager.setNightDisplayAutoMode(Integer.parseInt((String) newValue));
|
||||
return mColorDisplayManager.setNightDisplayAutoMode(Integer.parseInt((String) newValue));
|
||||
}
|
||||
}
|
||||
|
@@ -19,18 +19,17 @@ package com.android.settings.display;
|
||||
import android.content.Context;
|
||||
import android.hardware.display.ColorDisplayManager;
|
||||
import androidx.preference.Preference;
|
||||
import com.android.internal.app.ColorDisplayController;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
|
||||
public class NightDisplayCustomEndTimePreferenceController extends BasePreferenceController {
|
||||
|
||||
private ColorDisplayController mController;
|
||||
private ColorDisplayManager mColorDisplayManager;
|
||||
private NightDisplayTimeFormatter mTimeFormatter;
|
||||
|
||||
public NightDisplayCustomEndTimePreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
|
||||
mController = new ColorDisplayController(context);
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
mTimeFormatter = new NightDisplayTimeFormatter(context);
|
||||
}
|
||||
|
||||
@@ -43,8 +42,9 @@ public class NightDisplayCustomEndTimePreferenceController extends BasePreferenc
|
||||
@Override
|
||||
public final void updateState(Preference preference) {
|
||||
preference
|
||||
.setVisible(mController.getAutoMode() == ColorDisplayManager.AUTO_MODE_CUSTOM_TIME);
|
||||
.setVisible(mColorDisplayManager.getNightDisplayAutoMode()
|
||||
== ColorDisplayManager.AUTO_MODE_CUSTOM_TIME);
|
||||
preference.setSummary(mTimeFormatter.getFormattedTimeString(
|
||||
mController.getCustomEndTime()));
|
||||
mColorDisplayManager.getNightDisplayCustomEndTime()));
|
||||
}
|
||||
}
|
||||
|
@@ -19,18 +19,17 @@ package com.android.settings.display;
|
||||
import android.content.Context;
|
||||
import android.hardware.display.ColorDisplayManager;
|
||||
import androidx.preference.Preference;
|
||||
import com.android.internal.app.ColorDisplayController;
|
||||
import com.android.settings.core.BasePreferenceController;
|
||||
|
||||
public class NightDisplayCustomStartTimePreferenceController extends BasePreferenceController {
|
||||
|
||||
private ColorDisplayController mController;
|
||||
private ColorDisplayManager mColorDisplayManager;
|
||||
private NightDisplayTimeFormatter mTimeFormatter;
|
||||
|
||||
public NightDisplayCustomStartTimePreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
|
||||
mController = new ColorDisplayController(context);
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
mTimeFormatter = new NightDisplayTimeFormatter(context);
|
||||
}
|
||||
|
||||
@@ -43,8 +42,9 @@ public class NightDisplayCustomStartTimePreferenceController extends BasePrefere
|
||||
@Override
|
||||
public final void updateState(Preference preference) {
|
||||
preference
|
||||
.setVisible(mController.getAutoMode() == ColorDisplayManager.AUTO_MODE_CUSTOM_TIME);
|
||||
.setVisible(mColorDisplayManager.getNightDisplayAutoMode()
|
||||
== ColorDisplayManager.AUTO_MODE_CUSTOM_TIME);
|
||||
preference.setSummary(mTimeFormatter.getFormattedTimeString(
|
||||
mController.getCustomStartTime()));
|
||||
mColorDisplayManager.getNightDisplayCustomStartTime()));
|
||||
}
|
||||
}
|
||||
|
@@ -22,26 +22,24 @@ import android.text.TextUtils;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
import androidx.annotation.VisibleForTesting;
|
||||
|
||||
import com.android.internal.app.ColorDisplayController;
|
||||
import com.android.settings.core.SliderPreferenceController;
|
||||
import com.android.settings.widget.SeekBarPreference;
|
||||
|
||||
public class NightDisplayIntensityPreferenceController extends SliderPreferenceController {
|
||||
|
||||
private ColorDisplayController mController;
|
||||
private ColorDisplayManager mColorDisplayManager;
|
||||
|
||||
public NightDisplayIntensityPreferenceController(Context context, String key) {
|
||||
super(context, key);
|
||||
mController = new ColorDisplayController(context);
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getAvailabilityStatus() {
|
||||
if (!ColorDisplayManager.isNightDisplayAvailable(mContext)) {
|
||||
return UNSUPPORTED_ON_DEVICE;
|
||||
} else if (!mController.isActivated()) {
|
||||
} else if (!mColorDisplayManager.isNightDisplayActivated()) {
|
||||
return DISABLED_DEPENDENT_SETTING;
|
||||
}
|
||||
return AVAILABLE;
|
||||
@@ -63,22 +61,22 @@ public class NightDisplayIntensityPreferenceController extends SliderPreferenceC
|
||||
@Override
|
||||
public final void updateState(Preference preference) {
|
||||
super.updateState(preference);
|
||||
preference.setEnabled(mController.isActivated());
|
||||
preference.setEnabled(mColorDisplayManager.isNightDisplayActivated());
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getSliderPosition() {
|
||||
return convertTemperature(mController.getColorTemperature());
|
||||
return convertTemperature(mColorDisplayManager.getNightDisplayColorTemperature());
|
||||
}
|
||||
|
||||
@Override
|
||||
public boolean setSliderPosition(int position) {
|
||||
return mController.setColorTemperature(convertTemperature(position));
|
||||
return mColorDisplayManager.setNightDisplayColorTemperature(convertTemperature(position));
|
||||
}
|
||||
|
||||
@Override
|
||||
public int getMaxSteps() {
|
||||
return convertTemperature(mController.getMinimumColorTemperature());
|
||||
return convertTemperature(ColorDisplayManager.getMinimumColorTemperature(mContext));
|
||||
}
|
||||
|
||||
/**
|
||||
@@ -87,6 +85,6 @@ public class NightDisplayIntensityPreferenceController extends SliderPreferenceC
|
||||
* adjustment status of the input.
|
||||
*/
|
||||
private int convertTemperature(int temperature) {
|
||||
return mController.getMaximumColorTemperature() - temperature;
|
||||
return ColorDisplayManager.getMaximumColorTemperature(mContext) - temperature;
|
||||
}
|
||||
}
|
@@ -15,6 +15,7 @@
|
||||
package com.android.settings.display;
|
||||
|
||||
import android.content.Context;
|
||||
import android.hardware.display.ColorDisplayManager;
|
||||
import android.util.AttributeSet;
|
||||
|
||||
import androidx.preference.SwitchPreference;
|
||||
@@ -26,12 +27,14 @@ import java.time.LocalTime;
|
||||
public class NightDisplayPreference extends SwitchPreference
|
||||
implements ColorDisplayController.Callback {
|
||||
|
||||
private ColorDisplayManager mColorDisplayManager;
|
||||
private ColorDisplayController mController;
|
||||
private NightDisplayTimeFormatter mTimeFormatter;
|
||||
|
||||
public NightDisplayPreference(Context context, AttributeSet attrs) {
|
||||
super(context, attrs);
|
||||
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
mController = new ColorDisplayController(context);
|
||||
mTimeFormatter = new NightDisplayTimeFormatter(context);
|
||||
}
|
||||
@@ -76,6 +79,6 @@ public class NightDisplayPreference extends SwitchPreference
|
||||
}
|
||||
|
||||
private void updateSummary() {
|
||||
setSummary(mTimeFormatter.getAutoModeTimeSummary(getContext(), mController));
|
||||
setSummary(mTimeFormatter.getAutoModeTimeSummary(getContext(), mColorDisplayManager));
|
||||
}
|
||||
}
|
||||
|
@@ -16,7 +16,6 @@ package com.android.settings.display;
|
||||
import android.content.Context;
|
||||
import android.hardware.display.ColorDisplayManager;
|
||||
|
||||
import com.android.internal.app.ColorDisplayController;
|
||||
import com.android.settings.R;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settingslib.core.AbstractPreferenceController;
|
||||
@@ -37,8 +36,8 @@ public class NightDisplayPreferenceController extends AbstractPreferenceControll
|
||||
if (!isEnabled) {
|
||||
return true;
|
||||
}
|
||||
final ColorDisplayController controller = new ColorDisplayController(context);
|
||||
return controller.getAutoMode() != ColorDisplayManager.AUTO_MODE_DISABLED;
|
||||
final ColorDisplayManager manager = context.getSystemService(ColorDisplayManager.class);
|
||||
return manager.getNightDisplayAutoMode() != ColorDisplayManager.AUTO_MODE_DISABLED;
|
||||
}
|
||||
|
||||
@Override
|
||||
|
@@ -50,6 +50,7 @@ public class NightDisplaySettings extends DashboardFragment
|
||||
private static final int DIALOG_START_TIME = 0;
|
||||
private static final int DIALOG_END_TIME = 1;
|
||||
|
||||
private ColorDisplayManager mColorDisplayManager;
|
||||
private ColorDisplayController mController;
|
||||
|
||||
@Override
|
||||
@@ -57,6 +58,7 @@ public class NightDisplaySettings extends DashboardFragment
|
||||
super.onCreate(savedInstanceState);
|
||||
|
||||
final Context context = getContext();
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
mController = new ColorDisplayController(context);
|
||||
}
|
||||
|
||||
@@ -93,9 +95,9 @@ public class NightDisplaySettings extends DashboardFragment
|
||||
if (dialogId == DIALOG_START_TIME || dialogId == DIALOG_END_TIME) {
|
||||
final LocalTime initialTime;
|
||||
if (dialogId == DIALOG_START_TIME) {
|
||||
initialTime = mController.getCustomStartTime();
|
||||
initialTime = mColorDisplayManager.getNightDisplayCustomStartTime();
|
||||
} else {
|
||||
initialTime = mController.getCustomEndTime();
|
||||
initialTime = mColorDisplayManager.getNightDisplayCustomEndTime();
|
||||
}
|
||||
|
||||
final Context context = getContext();
|
||||
@@ -103,9 +105,9 @@ public class NightDisplaySettings extends DashboardFragment
|
||||
return new TimePickerDialog(context, (view, hourOfDay, minute) -> {
|
||||
final LocalTime time = LocalTime.of(hourOfDay, minute);
|
||||
if (dialogId == DIALOG_START_TIME) {
|
||||
mController.setCustomStartTime(time);
|
||||
mColorDisplayManager.setNightDisplayCustomStartTime(time);
|
||||
} else {
|
||||
mController.setCustomEndTime(time);
|
||||
mColorDisplayManager.setNightDisplayCustomEndTime(time);
|
||||
}
|
||||
}, initialTime.getHour(), initialTime.getMinute(), use24HourFormat);
|
||||
}
|
||||
|
@@ -19,7 +19,6 @@ package com.android.settings.display;
|
||||
import android.content.Context;
|
||||
|
||||
import android.hardware.display.ColorDisplayManager;
|
||||
import com.android.internal.app.ColorDisplayController;
|
||||
import com.android.settings.R;
|
||||
|
||||
import java.text.DateFormat;
|
||||
@@ -46,22 +45,23 @@ public class NightDisplayTimeFormatter {
|
||||
return mTimeFormatter.format(c.getTime());
|
||||
}
|
||||
|
||||
public String getAutoModeTimeSummary(Context context, ColorDisplayController controller) {
|
||||
final int summaryFormatResId = controller.isActivated() ? R.string.night_display_summary_on
|
||||
public String getAutoModeTimeSummary(Context context, ColorDisplayManager manager) {
|
||||
final int summaryFormatResId =
|
||||
manager.isNightDisplayActivated() ? R.string.night_display_summary_on
|
||||
: R.string.night_display_summary_off;
|
||||
return context.getString(summaryFormatResId, getAutoModeSummary(context, controller));
|
||||
return context.getString(summaryFormatResId, getAutoModeSummary(context, manager));
|
||||
}
|
||||
|
||||
private String getAutoModeSummary(Context context, ColorDisplayController controller) {
|
||||
final boolean isActivated = controller.isActivated();
|
||||
final int autoMode = controller.getAutoMode();
|
||||
private String getAutoModeSummary(Context context, ColorDisplayManager manager) {
|
||||
final boolean isActivated = manager.isNightDisplayActivated();
|
||||
final int autoMode = manager.getNightDisplayAutoMode();
|
||||
if (autoMode == ColorDisplayManager.AUTO_MODE_CUSTOM_TIME) {
|
||||
if (isActivated) {
|
||||
return context.getString(R.string.night_display_summary_on_auto_mode_custom,
|
||||
getFormattedTimeString(controller.getCustomEndTime()));
|
||||
getFormattedTimeString(manager.getNightDisplayCustomEndTime()));
|
||||
} else {
|
||||
return context.getString(R.string.night_display_summary_off_auto_mode_custom,
|
||||
getFormattedTimeString(controller.getCustomStartTime()));
|
||||
getFormattedTimeString(manager.getNightDisplayCustomStartTime()));
|
||||
}
|
||||
} else if (autoMode == ColorDisplayManager.AUTO_MODE_TWILIGHT) {
|
||||
return context.getString(isActivated
|
||||
|
Reference in New Issue
Block a user