From 4a60c8876e0960ce1c7dfa7cbcf5eb07f2f701aa Mon Sep 17 00:00:00 2001 From: Jason Monk Date: Tue, 26 Jan 2016 17:21:04 -0500 Subject: [PATCH] Add DND Suggestion after 30 days Suggest users setup automatic rules if they haven't after 30 days Also fix the id labeling for the RV adapter, so that it can handle removing of suggestions properly. Change-Id: I0cce76f3db1d444011f7d8a31348714d102650cf --- AndroidManifest.xml | 17 ++++++ res/values/strings.xml | 3 + res/xml/suggestion_ordering.xml | 2 + src/com/android/settings/Settings.java | 1 + .../settings/dashboard/DashboardAdapter.java | 57 +++++++++++++------ .../settings/dashboard/SuggestionsChecks.java | 55 ++++++++++++++++++ 6 files changed, 118 insertions(+), 17 deletions(-) create mode 100644 src/com/android/settings/dashboard/SuggestionsChecks.java diff --git a/AndroidManifest.xml b/AndroidManifest.xml index 90d87933c5e..8e58f489161 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -813,6 +813,23 @@ android:value="true" /> + + + + + + + + + + diff --git a/res/values/strings.xml b/res/values/strings.xml index 9336feeb791..b510872eebd 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -5768,6 +5768,9 @@ Automatic rules + + Set up Do Not Disturb Schedule + Priority only diff --git a/res/xml/suggestion_ordering.xml b/res/xml/suggestion_ordering.xml index 339b195bc1f..55f7803be44 100644 --- a/res/xml/suggestion_ordering.xml +++ b/res/xml/suggestion_ordering.xml @@ -22,4 +22,6 @@ multiple="true" /> + diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java index 1c636b8d807..99e69683548 100644 --- a/src/com/android/settings/Settings.java +++ b/src/com/android/settings/Settings.java @@ -103,6 +103,7 @@ public class Settings extends SettingsActivity { public static class ZenModeSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModePrioritySettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeAutomationSettingsActivity extends SettingsActivity { /* empty */ } + public static class ZenModeAutomationSuggestionActivity extends SettingsActivity { /* empty */ } public static class ZenModeScheduleRuleSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeEventRuleSettingsActivity extends SettingsActivity { /* empty */ } public static class ZenModeExternalRuleSettingsActivity extends SettingsActivity { /* empty */ } diff --git a/src/com/android/settings/dashboard/DashboardAdapter.java b/src/com/android/settings/dashboard/DashboardAdapter.java index 0d92c620d49..f40fa9cecd6 100644 --- a/src/com/android/settings/dashboard/DashboardAdapter.java +++ b/src/com/android/settings/dashboard/DashboardAdapter.java @@ -43,6 +43,10 @@ import java.util.List; public class DashboardAdapter extends RecyclerView.Adapter implements View.OnClickListener { public static final String TAG = "DashboardAdapter"; + private static final int NS_SPACER = 0; + private static final int NS_SUGGESTION = 1000; + private static final int NS_ITEMS = 2000; + private static final int NS_CONDITION = 3000; private static int SUGGESTION_MODE_DEFAULT = 0; private static int SUGGESTION_MODE_COLLAPSED = 1; @@ -55,6 +59,7 @@ public class DashboardAdapter extends RecyclerView.Adapter mIds = new ArrayList<>(); private final Context mContext; + private final SuggestionsChecks mSuggestionsChecks; private List mCategories; private List mConditions; @@ -71,13 +76,20 @@ public class DashboardAdapter extends RecyclerView.Adapter zenRules = NotificationManager.from(mContext).getAutomaticZenRules(); + final int N = zenRules.size(); + for (int i = 0; i < N; i++) { + if (zenRules.get(i).isEnabled()) { + return true; + } + } + return false; + } + +}