Only show the schedule text for the night display and dark theme
In Android S design, night display and dark theme only show schedule text for summary. - Rmove redundant string resource. - Remove redundant method in night display formatter. - Refactor the code in dark mode preference and night display controller. Test: See the correct behavior in screen. Fix: 174964139 Change-Id: I658b3073a0a6ed83f589103999c711e5430eaeb7
This commit is contained in:
@@ -17,6 +17,7 @@ import android.content.Context;
|
||||
import android.hardware.display.ColorDisplayManager;
|
||||
import android.hardware.display.NightDisplayListener;
|
||||
|
||||
import androidx.preference.Preference;
|
||||
import androidx.preference.PreferenceScreen;
|
||||
|
||||
import com.android.settings.R;
|
||||
@@ -32,6 +33,7 @@ public class NightDisplayPreferenceController extends TogglePreferenceController
|
||||
|
||||
private final ColorDisplayManager mColorDisplayManager;
|
||||
private final NightDisplayListener mNightDisplayListener;
|
||||
private final NightDisplayTimeFormatter mTimeFormatter;
|
||||
private PrimarySwitchPreference mPreference;
|
||||
|
||||
public NightDisplayPreferenceController(Context context, String key) {
|
||||
@@ -39,6 +41,7 @@ public class NightDisplayPreferenceController extends TogglePreferenceController
|
||||
|
||||
mColorDisplayManager = context.getSystemService(ColorDisplayManager.class);
|
||||
mNightDisplayListener = new NightDisplayListener(context);
|
||||
mTimeFormatter = new NightDisplayTimeFormatter(context);
|
||||
}
|
||||
|
||||
public static boolean isSuggestionComplete(Context context) {
|
||||
@@ -86,6 +89,12 @@ public class NightDisplayPreferenceController extends TogglePreferenceController
|
||||
return mColorDisplayManager.setNightDisplayActivated(isChecked);
|
||||
}
|
||||
|
||||
@Override
|
||||
public void updateState(Preference preference) {
|
||||
super.updateState(preference);
|
||||
preference.setSummary(mTimeFormatter.getAutoModeSummary(mContext, mColorDisplayManager));
|
||||
}
|
||||
|
||||
@Override
|
||||
public void onActivated(boolean activated) {
|
||||
updateState(mPreference);
|
||||
|
@@ -17,8 +17,8 @@
|
||||
package com.android.settings.display;
|
||||
|
||||
import android.content.Context;
|
||||
|
||||
import android.hardware.display.ColorDisplayManager;
|
||||
|
||||
import com.android.settings.R;
|
||||
|
||||
import java.text.DateFormat;
|
||||
@@ -45,13 +45,6 @@ public class NightDisplayTimeFormatter {
|
||||
return mTimeFormatter.format(c.getTime());
|
||||
}
|
||||
|
||||
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, manager));
|
||||
}
|
||||
|
||||
public String getAutoModeSummary(Context context, ColorDisplayManager manager) {
|
||||
final boolean isActivated = manager.isNightDisplayActivated();
|
||||
final int autoMode = manager.getNightDisplayAutoMode();
|
||||
|
@@ -74,10 +74,10 @@ public class DarkModePreference extends PrimarySwitchPreference {
|
||||
return;
|
||||
}
|
||||
final int mode = mUiModeManager.getNightMode();
|
||||
String detail;
|
||||
String summary;
|
||||
|
||||
if (mode == UiModeManager.MODE_NIGHT_AUTO) {
|
||||
detail = getContext().getString(active
|
||||
summary = getContext().getString(active
|
||||
? R.string.dark_ui_summary_on_auto_mode_auto
|
||||
: R.string.dark_ui_summary_off_auto_mode_auto);
|
||||
} else if (mode == UiModeManager.MODE_NIGHT_CUSTOM) {
|
||||
@@ -85,17 +85,14 @@ public class DarkModePreference extends PrimarySwitchPreference {
|
||||
? mUiModeManager.getCustomNightModeEnd()
|
||||
: mUiModeManager.getCustomNightModeStart();
|
||||
final String timeStr = mFormat.of(time);
|
||||
detail = getContext().getString(active
|
||||
summary = getContext().getString(active
|
||||
? R.string.dark_ui_summary_on_auto_mode_custom
|
||||
: R.string.dark_ui_summary_off_auto_mode_custom, timeStr);
|
||||
} else {
|
||||
detail = getContext().getString(active
|
||||
summary = getContext().getString(active
|
||||
? R.string.dark_ui_summary_on_auto_mode_never
|
||||
: R.string.dark_ui_summary_off_auto_mode_never);
|
||||
}
|
||||
String summary = getContext().getString(active
|
||||
? R.string.dark_ui_summary_on
|
||||
: R.string.dark_ui_summary_off, detail);
|
||||
|
||||
setSummary(summary);
|
||||
}
|
||||
|
Reference in New Issue
Block a user