History log of /frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
7c9350a940b4f96eb092c0dc2a7169b9e20b35ef 21-Apr-2016 Julia Reynolds <juliacr@google.com> Always reevaluate rules when a new service is added.

Otherwise the condition providers may never get an
onSubscribe call and may not turn on at the right time.

Bug: 26981870
Change-Id: Ia622597f10cc26f7c34ece1748013655543f488f
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
7034caf2944962e67291f3e88888c6143c19161a 09-Mar-2016 Julia Reynolds <juliacr@google.com> Query calendar in a background thread.

Bug: 24667663
Change-Id: I87da42e9d0a12629d58cc4b859ae1ad7ab5f3121
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
5a43aaa6a42741510db21671c54b2891f9f284a4 15-Dec-2015 Julia Reynolds <juliacr@google.com> Clean up orphaned zen rules, synchronize better.

(If a rule was restored to the device but the user didn't restore
the matching app).

Bug: 25472361
Change-Id: Icaefd0d1fca78ff351937fbe553ae72922a5457f
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
43f1befac23564fc26c9329ce4e56d32f03dfab9 04-Nov-2015 Julia Reynolds <juliacr@google.com> Delete unused code.

Change-Id: I49660236b4d40010885b2ee3f8d03b5b258a035e
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
e0ced4da1990583d6438cb3e99a8e16b5d1e8cc6 01-Oct-2015 Eric Laurent <elaurent@google.com> ZenModeHelper: fix cross deadlock with AudioService

Processing ZenModeHelper.setConfig() synchronously in
ZenModeConditions.onConditionChanged() can cause a cross deadlock between
ConditionProviders.mMutex and AudioService.mSettingsLock.

Add a method to set Zen mode config asynchronously.

Bug: 24528290.
Change-Id: I9c1701ca6bef084527821175d84002b612241995
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
21258a3703fe16b7c4754aec743215f3063bcdac 28-May-2015 John Spurlock <jspurlock@google.com> Zen: Store notification zen policy per-user.

- Keep a zen config per user in NoMan.
- Add zen config for all users to xml policy storage mechanism.
- Initialize config to default for new secondary users.
- Re-evaluate global zen on user switch.
- Remove some unused code in NoMan.
- Make ZenModeHelper aware of multiple users, keep all configs,
add to dump.
- Log config diffs in addition to the config itself in ZenLog.

Bug: 15845915
Change-Id: Ic847451e5d111c74916def1ea0948db5a76966c9
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
1b8b22b1a412539020f78a132cff7c8fa7fae258 20-May-2015 John Spurlock <jspurlock@google.com> Zen: Calendar auto-rule tracks primary calendar for corp profile.

- Track the calendar provider for the managed profile user if found.
- Add userId to the shared data structure to disambig calendar ids.
- Delay rule update a bit to guard against chatty updates.
- Fix logging in calendar rule.

Bug: 21155107
Change-Id: Id2303fcc39b1fa7417b1844b7869d773ef92434c
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
a7d92b19c048fe2b3115073286103e9194a915d6 13-May-2015 John Spurlock <jspurlock@google.com> Zen: Serialize notify conditions calls, defer subscription.

- Don't subscribe/unsubscribe to new rules until the config has
been set, avoids race conditions.
- Process all condition updates on the same thread.
- Add the schedule provider's next alarm state to dumpsys.

Bug: 21111868
Change-Id: I389f4a4905a56d6c976f01408f48f87230109aba
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
d60258f2d33214077a22c1a682944fa9e47c0461 30-Apr-2015 John Spurlock <jspurlock@google.com> Zen: New event condition data model.

- Add system condition provider for calendar event-based rules.
- Add stub condition provider for handling event conditions.
- Add various shared items to support new settings subpage.

Bug: 20064962
Change-Id: I6f5afe0f1444976f0dc6807048e0580e8a28070e
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
39581cc16d3c44acc8f0881d8e63afe53acaa1c1 10-Apr-2015 John Spurlock <jspurlock@google.com> Zen: Support external condition providers.

- Manage provider subscriptions for external condition providers
within ZenModeConditions.
- Move "is automatic rule active" check into common location.
- Add constant for external rule setting configuration page.
- Consolidate log tags.
- Reset rule snoozing on boot.

Bug: 20064962
Change-Id: Ida207dbf363f61e1727974e611f43f27c23accfb
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java
b2278d65714c0dd0a6f94d1913db1ebc8bfc8b06 07-Apr-2015 John Spurlock <jspurlock@google.com> An update on Downtime.

The update is that Downtime is obsolete. Replaced by the
ability to define multiple named schedule calendars.

- Make changes to ZenModeConfig to properly model manual
and automatic rules.
- Refactor the zen mode helper (and supporting classes) to
properly handle / report multiple claims on zen mode.
The "manual" rule (specified by the user in the UI) vs
one or more automatic rules.
- Automatic rules are still backed by condition providers,
but the layering is now cleaner. ConditionProviders is now
completely generic, has no ties to zen mode.
- Specifically, the new layering for zen mode (below noman) is:
ZenModeHelper: Source of truth for zen state
ZenModeFiltering: Subhelper dedicated to filtering rules.
ZenModeConditions: Subhelper dedicated to managing automatic rules.
ConditionProviders: Underlying engine for reporting named boolean state.
- Migration story for users with existing downtime config, migrated
to a single new calendar named downtime.
- For users with no existing downtime, two default calendars are created
for weeknights + weekends (icu4j for all locales will be done in a followup).
- Remove obsolete DowntimeConditionProvider/NextAlarmConditionProvider and tracking.
- Clean up obsolete resources.
- Add common zen summary description string computation.
- Add proper noman wrappers for the new model.
- Change the semantics of the global zen setting. It is now read-only. Setters
must call noman, added a "reason" to all calls for better attribution.
- Update zenmodepanel + volumedialog to the new model.
- Display the one or more automatic rules in the new zen footer summary.
- "Snooze" the automatic rules when the user explicitly turns zen off.

Bug: 20064962
Change-Id: Idd9deb865a6035ad0cfae660198dccb517e6d7cc
/frameworks/base/services/core/java/com/android/server/notification/ZenModeConditions.java