[go: nahoru, domu]

History log of /frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
6e839b006e102b4c2d9f495fe0551e7668dae61e 13-Apr-2016 Julia Reynolds <juliacr@google.com> Allow notification listeners full DND access.

Bug: 27976092
Change-Id: I15da87f4b6a17e43ced80ea473288b43d20195d8
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
1d6d16d6995099afa506ecac38019a5bb8eacd86 07-Mar-2016 Julia Reynolds <juliacr@google.com> Condition cleanup.

Change-Id: If978bebac52c0b1438e86339669f409b4b17c6fc
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
0f50e4ebabc39f38e90c7d6e7261043b9852dd51 11-Feb-2016 Julia Reynolds <juliacr@google.com> Possibly fix deadlock.

Bug: 27122790
Change-Id: I4361cc09e34ea71d7d69a54330ce52574c2b9b3d
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
51017d0e23ce9855fabcf786a2067ceb19121fbc 15-Dec-2015 Chris Wren <cwren@android.com> implement assistant service connection

Added a guest-mode to ManagedServices.
Like system services, the lifecycle of a guest is not managed.
Unlike system services, guests are not considered privledged.

The Assistant gets all the usual listener events.
Implemented adjustImportance.
Future work: enqueued, clicked, visibility, removed, annotations

Bug: 22455414
Change-Id: Ic41c0bf625b5e98cb577b49098bba23a539bb507
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.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/ConditionProviders.java
c279b996f13e644782633853612452860e596308 30-Oct-2015 Julia Reynolds <juliacr@google.com> Use preexisting DND access setting for condition providers.

So that apps that are already whitelisted don't have to be whitelisted
again if they add a CP.

Bug: 22977552
Change-Id: I4042d531178ab63d5d1e5b963fc081e3ed523835
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
ddbe4ca1ca3c585cf86dac3823947ebacb7c9be6 14-Aug-2015 Xiaohui Chen <xiaohuic@google.com> Clean up USER_OWNER in notifications

Bug: 19913735
Change-Id: Ib6c2ed11eee6adf062a6dff00c99e62945153f9e
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.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/ConditionProviders.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/ConditionProviders.java
2f096ed7662f9d20876ae2944ffc4ecf4fd51faa 04-May-2015 John Spurlock <jspurlock@google.com> Zen: Implement calendar event system condition provider.

- Wire up basic implementation for the system provider that
handles event-based DND subscriptions.
- Backed by the standard system calendar content provider.
- Move shared time utils to base class, clean up logging.

Bug: 20064962
Change-Id: I070b6baa580c592c2ab4101c6b44a254787f9dd7
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.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/ConditionProviders.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/ConditionProviders.java
b3d4cb369e37b1b7e85832cc035226dc7cc8f380 09-Jan-2015 Dianne Hackborn <hackbod@google.com> Fix issue #18942959: Phone getting stuck then restarts after unplugging from Audi

FastPrintWriter needs to have its own lock for each instance, or
else one getting blocked can cause others to block and whacky deadlocks
result.

Also:

- Improve error reporting of SystemConfig to tell you which config
file is the problem.
- Fix CoreSettingsProvider to not spew errors if a setting is not
defined (it should just use a default value).
- Get rid of noisy init output of ConditionProviders.
- Reduce log noise of starting a process; move some of that information
to ProcessRecord to print on demand.

Change-Id: I1032d141ddd449968b74ab7b88ab36f2d228ad1a
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
530052a2fe3b6a6a4246ce28ab0ced647fe7f470 30-Nov-2014 John Spurlock <jspurlock@google.com> Zen: New behavior for built-in downtime + nextalarm conditions.

- Downtime: Allow user to enter downtime early, offer as an end
condition four hours before downtime starts. Available in
either none or priority, regardless of settings configuration.
- Downtime: Always exit before next alarm if zen=none.
- Downtime: Make more like any other condition provider, remove
special status (mostly).
- Downtime: New auto-triggering rules, allow triggering after a
manual condition ends, once.
- Decouple NextAlarm + Downtime providers, allow them to offer
their conditions at the same time.
- Downtime/NextAlarm: Update conditions if they change while being
requested, even if unsubscribed.
- Make all three built-in condition providers optional, via config.
- New internal helper for runtime config.
- Don't follow changes to next alarm, consider the condition false.
- Isolate downtime calendar logic into separate class (for testing).
- Allow a:bb -> a:bb as a valid downtime range (all day).
- Volume dialog: configuration establishes maximum number of visible
conditions, including built-ins.
- Zen mode panel: avoid widget updates during layout transition.
- Zen mode panel: move controller callers to background thread.
- Zen mode panel: hide/show/rebind rows instead of adding/removing.
- ZenLog: Add downtime autotrigger results.
- Volume panel: Smarter refresh on ringer/zen changes.

Bug: 16373455

Change-Id: I4f801018ddb0beb6eb9fa03a81c79f7949888a3f
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
25c3421c5e65ddc7f2b2bf1b1208f3634e6f5256 12-Nov-2014 John Spurlock <jspurlock@google.com> Zen: Update condition text for current condition.

If the provider sends us an updated summary (or other text)
for the currently selected exit condition, update the UI and
persisted condition.

Update the downtime condition text (end time/line2 + summary)
when the next alarm changes (if downtime = none).

Also, clear the fired-alarm cache on time or time-zone resets.

Bug: 16373455
Change-Id: Ib38c52104a281fcc04a89612b643a219fd82b40b
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
6b0623a1129a7e1bc4949b7dca4fa133ff322c4a 10-Nov-2014 John Spurlock <jspurlock@google.com> Zen: Pull next-alarm tracking out into separate helper.

In preparation for sharing with DowntimeConditionProvider.

Bug: 16373455
Change-Id: If8d90187fa399935137c7ba6152925a9106a4596
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
cc30c8d729c9d846012ac6dd03c1e51262936e8f 05-Nov-2014 John Spurlock <jspurlock@google.com> Zen: Add the ability to enter "None" mode during downtime.

Updates to the shared config structure and the service backend.

Bug: 16373455
Change-Id: I45761690ba6b32eb81c9e2a5c1f2d4adad93e58d
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
37bc92cc2332eb6f864977381135c19d6a081a92 03-Nov-2014 John Spurlock <jspurlock@google.com> Zen: Create a new exit condition for "next alarm".

- If the user's next alarm is in the next 12 hrs, provide
this as an exit condition trigger for leaving none/priority.
- Don't display the next alarm condition when downtime is active.
- When the next-alarm exit condition is active, follow changes
to the next alarm, assuming it remains within the 12-hr window.
- Tweak the downtime condition strings to be consistent.

Bug: 16373455
Change-Id: I4020b91d323dead998e62d655132eca07438b148
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
acb8dfe0a692883d56a787171cf350c24549beff 04-Sep-2014 Jason Monk <jmonk@google.com> Allow downtime to exit from no interruptions

Since the user can specify it to exit from no interruptions, it
needs to actually exit.

Bug: 17331112
Change-Id: I9a8412e5b42af17e79798f5ea4bcf3e19924cc93
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
4db0d98b42a723f2e16c6595e85e866fd26c6d98 13-Aug-2014 John Spurlock <jspurlock@google.com> Zen: Downtime now a condition provider, persist conditions.

- Persist the entire exit condition instead of only the id.
- Make downtime a proper condition provider (similar to the
existing countdown provider for time-based conditions)
- Move all downtime-related items out of ZenModeHelper and
into the new condition provider.
- Reevaluate downtime more often, when any of its inputs change.
- Make sure downtime appears as an available condition in the
condition panel when applicable.

Bug:16296125
Bug:16211189
Bug:17031767
Change-Id: I1d8269a4e6fe170ce776bf932dbbdfb29dd25dd7
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
6ae82a747c77fbdba45d2deaf127ef068c294aa1 16-Jul-2014 John Spurlock <jspurlock@google.com> Add a zen-specific event sink, include in dumpstate.

Useful for tracking zen events (since boot) that are
too old to be included in the standard log.

Change-Id: I91633d35b26091bb18523a76ebdba9d286d0cd41
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
50806fc4ceff4bb093a18bdecb506163e68b9cbb 15-Jul-2014 John Spurlock <jspurlock@google.com> Zen: handle exit conditions across reboots.

- Use the persisted exit condition (and a new
persisted exit component) to immediately resubscribe
to the manual exit condition (if present)
- Fire false immediately for old countdown conditions.
- Add a new zen lens to noman dump, and a bit more info.
- Refresh the current exit condition when reopening the panel.

Bug:15844990
Bug:16212455
Change-Id: I8bfaf1b2a6cf3d8818002a9db5c527ad3aa4c05c
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
ae641c9ccd3f81214cee54a5f13804f1765187ad 01-Jul-2014 John Spurlock <jspurlock@google.com> Implement new volume UI design.

- Add segmented zen-mode picker to the rocker UI.
- Add a new "no interruptions" value to the zen setting.
- Implement expandable condition subpanel on the rocker UI.
- Remove the old circle&slash icons.
- Suppress alarm sounds if in "no interruptions" mode.
- Add warning re: alarms to the condition UI.
- Allow rocker UI to display over the keyguard.
- Remove Notifications QS tile.
- Realign volume rocker to the top of the screen.
- Add support for new "days" sleepMode.
- New icon policy rules for "volume" slot.
- New important icon (star).

Associated Settings change:
I6ed56791784968adfbd684f490dbbebed285a2dd

Bug:15831713
Change-Id: I35afe38646f04d2ba0dbac11c2c6356120a33694
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
25e2d24f24040e58a61169db797f760b16c11f5d 27-Jun-2014 John Spurlock <jspurlock@google.com> Add optional package filtering to notification dumpsys.

$ adb shell dumpsys notification p <fragment>

Change-Id: Iddcc45066187e0e9d5812275de132dd6bba2a135
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
856edebad73560e9b1cce021a7de9a0470d07176 02-Jun-2014 John Spurlock <jspurlock@google.com> Zen: Stateful condition panel.

When DND is on, expanded panel shows the current time
condition, or time remaining. The last time bucket
selected is remembered as the default option for the
next time.

Move the server-side countdown helper into a proper
condition provider, but register it in-process as a
system provider.

Move common countdown condition parsing into ZenModeConfig
to reuse from system components.

Keep the manual exit condition around in zen mode config
and add plumbing for getting / listening to the
controller.

Keep the last QS detail panel around instead of
recreating it every time.

Fix the time condition's plus and minus button
enabling logic, and enhance the click handler to
deal properly with the next or previous bucket.

Bug:15344758
Change-Id: Ie7018a1c20e20f6d7e5f9e7874188374e6f8e2ab
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
fb8eb00bcd56429fc6a4f1f349ee09a45074ebbf 20-May-2014 John Spurlock <jspurlock@google.com> Dump the countdown condition, if active.

Change-Id: I3fa1d239379565bae74094dc2bc2da76326f41dd
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
af8d6c44f06d2f8baac2c5774a9efdae3fc36797 07-May-2014 John Spurlock <jspurlock@google.com> New quick settings implementation.

Bug:14133785
Change-Id: I7f57f8e7ebcc3e1a06fa5204f477470f14299e1f
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
3b98b3f1f85aff0c84ebef4dd497c146d1b4d248 01-May-2014 John Spurlock <jspurlock@google.com> Implement long-term condition subscriptions.

Bind long-term conditions (like "in a meeting") to enter/exit
zen mode automatically.

Persist automatic condition subscriptions to maintain them across
reboots.

Normalize condition state binding: true => enter zen, false => exit.

Change-Id: Icba2b8b25c0a352ae8215f4c0a324e4f966c0165
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
e86de4c0670550a29edae77ebb9f5c8ba5631231 30-Apr-2014 John Spurlock <jspurlock@google.com> Zen mode tweaks.

- Fix regression with alarms.
- Run all condition provider callbacks on the main thread.
- Exit zen mode if the current condition is disabled / uninstalled.

Bug:14402762
Change-Id: I0746670c1910047a9dc9b7e29aa1a6c3899fd9fe
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
1c923a386ee4d8c31cc289f8628b8fc46bf08e86 27-Apr-2014 John Spurlock <jspurlock@google.com> Force condition provider unsubscribe when exiting zen mode.

Bug:13743109
Change-Id: I3c205067498a86e2862a0c545bc38e41682693d5
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
e77bb36d48b6b8b5c3bb6a1195aca469bb237919 26-Apr-2014 John Spurlock <jspurlock@google.com> Wire up condition providers to zen mode exit triggers.

Bug:13743109
Change-Id: I4e45d7050d1f9aaa379f46379a3203e61e216a3d
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java
7340fc8665ae3f9f1978f42aa0e5e1da85036158 25-Apr-2014 John Spurlock <jspurlock@google.com> Introduce condition provider services.

Add the condition provider interface, base class, and associated
system metadata.

Pull out common service management code into a reusable helper,
used by notification listeners and condition providers. The
helper, ManagedServices, is now completely self-contained - it
has no dependencies on NoMan or NoMan abstractions.

Bug:13743109
Change-Id: I6856d40f0a2ead78ac9b5707568559a57e7eb009
/frameworks/base/services/core/java/com/android/server/notification/ConditionProviders.java