Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 28e0ce5b authored by TreeHugger Robot's avatar TreeHugger Robot Committed by Android (Google) Code Review
Browse files

Merge "Don't force lower case in ZenSettings"

parents fe805d7a bb0501c2
Loading
Loading
Loading
Loading
+24 −0
Original line number Diff line number Diff line
@@ -7975,9 +7975,15 @@
    <!-- [CHAR LIMIT=50] Zen mode settings: All messages summary -->
    <string name="zen_mode_all_messages">Messages</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Messages option (ie: text messages) -->
    <string name="zen_mode_all_messages_list">messages</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Selected messages summary -->
    <string name="zen_mode_selected_messages">Some messages</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Selected messages (ie: some text messages are allowed to bypass dnd) -->
    <string name="zen_mode_selected_messages_list">some messages</string>
    <!-- [CHAR LIMIT=40] Zen mode settings: Calls or messages option value: From anyone -->
    <string name="zen_mode_from_anyone">From anyone</string>
@@ -8002,21 +8008,36 @@
    <!-- [CHAR LIMIT=50] Zen mode settings: Alarms option -->
    <string name="zen_mode_alarms">Alarms</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Alarms option (ie: sound from alarm clock) -->
    <string name="zen_mode_alarms_list">alarms</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Media option -->
    <string name="zen_mode_media">Media</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Media (ie: sound from video) -->
    <string name="zen_mode_media_list">media</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: System option which includes sounds such as touch sounds -->
    <string name="zen_mode_system">Touch sounds</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: System sounds (ie: touch sounds) -->
    <string name="zen_mode_system_list">touch sounds</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Reminders option -->
    <string name="zen_mode_reminders">Reminders</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Reminders (ie: calendar reminders are allowed to bypass dnd) -->
    <string name="zen_mode_reminders_list">reminders</string>
    <!-- [CHAR LIMIT=70] Zen mode settings: Allow reminders toggle title -->
    <string name="zen_mode_reminders_title">Allow reminders</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Events option -->
    <string name="zen_mode_events">Events</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Events (ie: calendar events) -->
    <string name="zen_mode_events_list">events</string>
    <!-- [CHAR LIMIT=70] Zen mode settings: Allow events toggle title -->
    <string name="zen_mode_events_title">Allow events</string>
@@ -8032,6 +8053,9 @@
    <!-- [CHAR LIMIT=50] Zen mode settings: Repeat callers option -->
    <string name="zen_mode_repeat_callers">Repeat callers</string>
    <!-- [CHAR LIMIT=50] Zen mode settings: Repeat callers (ie: repeat callers are allowed to bypass dnd) -->
    <string name="zen_mode_repeat_callers_list">repeat callers</string>
    <!-- [CHAR LIMIT=70] Zen mode settings: Allow repeat callers toggle title -->
    <string name="zen_mode_repeat_callers_title">Allow repeat callers</string>
+89 −55
Original line number Diff line number Diff line
@@ -119,22 +119,22 @@ public class ZenModeSettings extends ZenModeSettingsBase {
            List<String> enabledCategories = getEnabledCategories(policy,
                    category -> PRIORITY_CATEGORY_ALARMS == category
                            || PRIORITY_CATEGORY_MEDIA == category
                            || PRIORITY_CATEGORY_SYSTEM == category);
                            || PRIORITY_CATEGORY_SYSTEM == category, false);
            int numCategories = enabledCategories.size();
            if (numCategories == 0) {
                return mContext.getString(R.string.zen_sound_all_muted);
            } else if (numCategories == 1) {
                return mContext.getString(R.string.zen_sound_one_allowed,
                        enabledCategories.get(0).toLowerCase());
                        enabledCategories.get(0));
            } else if (numCategories == 2) {
                return mContext.getString(R.string.zen_sound_two_allowed,
                        enabledCategories.get(0).toLowerCase(),
                        enabledCategories.get(1).toLowerCase());
                        enabledCategories.get(0),
                        enabledCategories.get(1));
            } else if (numCategories == 3) {
                return mContext.getString(R.string.zen_sound_three_allowed,
                        enabledCategories.get(0).toLowerCase(),
                        enabledCategories.get(1).toLowerCase(),
                        enabledCategories.get(2).toLowerCase());
                        enabledCategories.get(0),
                        enabledCategories.get(1),
                        enabledCategories.get(2));
            } else {
                return mContext.getString(R.string.zen_sound_none_muted);
            }
@@ -143,17 +143,17 @@ public class ZenModeSettings extends ZenModeSettingsBase {
        String getCallsSettingSummary(Policy policy) {
            List<String> enabledCategories = getEnabledCategories(policy,
                    category -> PRIORITY_CATEGORY_CALLS == category
                            || PRIORITY_CATEGORY_REPEAT_CALLERS == category);
                            || PRIORITY_CATEGORY_REPEAT_CALLERS == category, false);
            int numCategories = enabledCategories.size();
            if (numCategories == 0) {
                return mContext.getString(R.string.zen_mode_no_exceptions);
            } else if (numCategories == 1) {
                return mContext.getString(R.string.zen_mode_calls_summary_one,
                        enabledCategories.get(0).toLowerCase());
                        enabledCategories.get(0));
            } else {
                return mContext.getString(R.string.zen_mode_calls_summary_two,
                        enabledCategories.get(0).toLowerCase(),
                        enabledCategories.get(1).toLowerCase());
                        enabledCategories.get(0),
                        enabledCategories.get(1));
            }
        }

@@ -161,7 +161,7 @@ public class ZenModeSettings extends ZenModeSettingsBase {
            List<String> enabledCategories = getEnabledCategories(policy,
                    category -> PRIORITY_CATEGORY_EVENTS == category
                            || PRIORITY_CATEGORY_REMINDERS == category
                            || PRIORITY_CATEGORY_MESSAGES == category);
                            || PRIORITY_CATEGORY_MESSAGES == category, true);
            int numCategories = enabledCategories.size();
            if (numCategories == 0) {
                return mContext.getString(R.string.zen_mode_no_exceptions);
@@ -169,19 +169,19 @@ public class ZenModeSettings extends ZenModeSettingsBase {
                return enabledCategories.get(0);
            } else if (numCategories == 2) {
                return mContext.getString(R.string.join_two_items, enabledCategories.get(0),
                        enabledCategories.get(1).toLowerCase());
                        enabledCategories.get(1));
            } else if (numCategories == 3){
                final List<String> summaries = new ArrayList<>();
                summaries.add(enabledCategories.get(0));
                summaries.add(enabledCategories.get(1).toLowerCase());
                summaries.add(enabledCategories.get(2).toLowerCase());
                summaries.add(enabledCategories.get(1));
                summaries.add(enabledCategories.get(2));

                return ListFormatter.getInstance().format(summaries);
            } else {
                final List<String> summaries = new ArrayList<>();
                summaries.add(enabledCategories.get(0));
                summaries.add(enabledCategories.get(1).toLowerCase());
                summaries.add(enabledCategories.get(2).toLowerCase());
                summaries.add(enabledCategories.get(1));
                summaries.add(enabledCategories.get(2));
                summaries.add(mContext.getString(R.string.zen_mode_other_options));

                return ListFormatter.getInstance().format(summaries);
@@ -251,55 +251,89 @@ public class ZenModeSettings extends ZenModeSettingsBase {
        }

        private List<String> getEnabledCategories(Policy policy,
                Predicate<Integer> filteredCategories) {
                Predicate<Integer> filteredCategories, boolean capitalizeFirstInList) {
            List<String> enabledCategories = new ArrayList<>();
            for (int category : ALL_PRIORITY_CATEGORIES) {
                boolean isFirst = capitalizeFirstInList && enabledCategories.isEmpty();
                if (filteredCategories.test(category) && isCategoryEnabled(policy, category)) {
                    if (category == Policy.PRIORITY_CATEGORY_REPEAT_CALLERS
                            && isCategoryEnabled(policy, Policy.PRIORITY_CATEGORY_CALLS)
                            && policy.priorityCallSenders == Policy.PRIORITY_SENDERS_ANY) {
                        continue;
                    }

                    enabledCategories.add(getCategory(category, policy, isFirst));
                }
            }
            return enabledCategories;
        }

        private boolean isCategoryEnabled(Policy policy, int categoryType) {
            return (policy.priorityCategories & categoryType) != 0;
        }

        private String getCategory(int category, Policy policy, boolean isFirst) {
            if (category == PRIORITY_CATEGORY_ALARMS) {
                        enabledCategories.add(mContext.getString(R.string.zen_mode_alarms));
                if (isFirst) {
                    return mContext.getString(R.string.zen_mode_alarms);
                } else {
                    return mContext.getString(R.string.zen_mode_alarms_list);
                }
            } else if (category == PRIORITY_CATEGORY_MEDIA) {
                        enabledCategories.add(mContext.getString(
                                R.string.zen_mode_media));
                if (isFirst) {
                    return mContext.getString(R.string.zen_mode_media);
                } else {
                    return mContext.getString(R.string.zen_mode_media_list);
                }
            } else if (category == PRIORITY_CATEGORY_SYSTEM) {
                        enabledCategories.add(mContext.getString(
                                R.string.zen_mode_system));
                if (isFirst) {
                    return mContext.getString(R.string.zen_mode_system);
                } else {
                    return mContext.getString(R.string.zen_mode_system_list);
                }
            } else if (category == Policy.PRIORITY_CATEGORY_MESSAGES) {
                if (policy.priorityMessageSenders == Policy.PRIORITY_SENDERS_ANY) {
                            enabledCategories.add(mContext.getString(
                                    R.string.zen_mode_all_messages));
                    if (isFirst) {
                        return mContext.getString(R.string.zen_mode_all_messages);
                    } else {
                        return mContext.getString(R.string.zen_mode_all_messages_list);
                    }
                } else {
                    if (isFirst) {
                        return mContext.getString(R.string.zen_mode_selected_messages);
                    } else {
                            enabledCategories.add(mContext.getString(
                                    R.string.zen_mode_selected_messages));
                        return mContext.getString(R.string.zen_mode_selected_messages_list);
                    }
                }
            } else if (category == Policy.PRIORITY_CATEGORY_EVENTS) {
                        enabledCategories.add(mContext.getString(R.string.zen_mode_events));
                if (isFirst) {
                    return mContext.getString(R.string.zen_mode_events);
                } else {
                    return mContext.getString(R.string.zen_mode_events_list);
                }
            } else if (category == Policy.PRIORITY_CATEGORY_REMINDERS) {
                        enabledCategories.add(mContext.getString(R.string.zen_mode_reminders));
                if (isFirst) {
                    return mContext.getString(R.string.zen_mode_reminders);
                } else {
                    return mContext.getString(R.string.zen_mode_reminders_list);
                }
            } else if (category == Policy.PRIORITY_CATEGORY_CALLS) {
                if (policy.priorityCallSenders == Policy.PRIORITY_SENDERS_ANY) {
                            enabledCategories.add(mContext.getString(
                                    R.string.zen_mode_all_callers));
                    return mContext.getString(R.string.zen_mode_all_callers);
                } else if (policy.priorityCallSenders == Policy.PRIORITY_SENDERS_CONTACTS){
                            enabledCategories.add(mContext.getString(
                                    R.string.zen_mode_contacts_callers));
                    return mContext.getString(R.string.zen_mode_contacts_callers);
                } else {
                            enabledCategories.add(mContext.getString(
                                    R.string.zen_mode_starred_callers));
                    return mContext.getString(R.string.zen_mode_starred_callers);
                }
            } else if (category == Policy.PRIORITY_CATEGORY_REPEAT_CALLERS) {
                        if (!enabledCategories.contains(mContext.getString(
                                R.string.zen_mode_all_callers))) {
                            enabledCategories.add(mContext.getString(
                                    R.string.zen_mode_repeat_callers));
                        }
                    }
                }
                if (isFirst) {
                    return mContext.getString(R.string.zen_mode_repeat_callers);
                } else {
                    return mContext.getString(R.string.zen_mode_repeat_callers_list);
                }
            return enabledCategories;
            }

        private boolean isCategoryEnabled(Policy policy, int categoryType) {
            return (policy.priorityCategories & categoryType) != 0;
            return "";
        }
    }