Modes List: Show the dynamic description, if available

For manual DND, this means "On until XX:XX".

Bug: 357889514
Test: manual
Flag: android.app.modes_ui
Change-Id: Ia7531e7a6413544de88e4539ed602c8c6b4f93a8
This commit is contained in:
Matías Hernández
2024-08-07 15:36:18 +02:00
parent f0952bef52
commit a53b35262d

View File

@@ -69,15 +69,16 @@ class ZenModesListItemPreference extends RestrictedPreference {
public void setZenMode(ZenMode zenMode) {
mZenMode = zenMode;
setTitle(mZenMode.getName());
String dynamicDescription = zenMode.getDynamicDescription(mContext);
CharSequence statusText = switch (mZenMode.getStatus()) {
case ENABLED_AND_ACTIVE ->
Strings.isNullOrEmpty(mZenMode.getTriggerDescription())
Strings.isNullOrEmpty(dynamicDescription)
? mContext.getString(R.string.zen_mode_active_text)
: mContext.getString(
R.string.zen_mode_format_status_and_trigger,
mContext.getString(R.string.zen_mode_active_text),
mZenMode.getRule().getTriggerDescription());
case ENABLED -> mZenMode.getRule().getTriggerDescription();
dynamicDescription);
case ENABLED -> dynamicDescription;
case DISABLED_BY_USER -> mContext.getString(R.string.zen_mode_disabled_by_user);
case DISABLED_BY_OTHER -> mContext.getString(R.string.zen_mode_disabled_needs_setup);
};