diff --git a/AndroidManifest.xml b/AndroidManifest.xml index adc16c5f35e..4ff16f95d29 100644 --- a/AndroidManifest.xml +++ b/AndroidManifest.xml @@ -810,6 +810,37 @@ android:value="true" /> + + + + + + + + + + + + + + + + + + + diff --git a/res/values/strings.xml b/res/values/strings.xml index 7d738f76784..7c49a900c90 100644 --- a/res/values/strings.xml +++ b/res/values/strings.xml @@ -2055,6 +2055,8 @@ After %1$s of inactivity Wallpaper + + Set up wallpaper Choose wallpaper from @@ -5767,6 +5769,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..41412747b40 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 */ } @@ -124,6 +125,8 @@ public class Settings extends SettingsActivity { public static class AppWriteSettingsActivity extends SettingsActivity { /* empty */ } public static class ManageDefaultAppsActivity extends SettingsActivity { /* empty */ } + public static class WallpaperSuggestionActivity extends SettingsActivity { /* empty */ } + // Categories. public static class WirelessSettings extends SettingsActivity { /* empty */ } public static class DeviceSettings extends SettingsActivity { /* empty */ } diff --git a/src/com/android/settings/SettingsActivity.java b/src/com/android/settings/SettingsActivity.java index da9f2fdfdb9..ce70f4c01a2 100644 --- a/src/com/android/settings/SettingsActivity.java +++ b/src/com/android/settings/SettingsActivity.java @@ -316,6 +316,7 @@ public class SettingsActivity extends SettingsDrawerActivity DrawOverlayDetails.class.getName(), WriteSettingsDetails.class.getName(), ManageDefaultApps.class.getName(), + WallpaperTypeSettings.class.getName(), }; 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; + } + + private boolean hasWallpaperSet() { + IBinder b = ServiceManager.getService(Context.WALLPAPER_SERVICE); + IWallpaperManager service = Stub.asInterface(b); + try { + return service.getWallpaper(mCallback, new Bundle()) != null; + } catch (RemoteException e) { + } + return false; + } + + private final IWallpaperManagerCallback mCallback = new IWallpaperManagerCallback.Stub() { + @Override + public void onWallpaperChanged() throws RemoteException { + // Don't care. + } + }; +}