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
Loading
Please register or sign in to comment