summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
author John Spurlock <jspurlock@google.com> 2014-10-01 18:56:33 +0000
committer Android Git Automerger <android-git-automerger@android.com> 2014-10-01 18:56:33 +0000
commit7e67011f15dd3c7df3200358d950cf4e4429db2c (patch)
tree7b11f6f2595d5ee199555620ff397a3324f49a0f
parent861978f7de8b95010fecfb76b15f1d81f4f5c3a8 (diff)
parent394f29e7618952fb6eee7ca53f434b418bbd3ded (diff)
am 394f29e7: am cd98a559: am c909e1b2: Zen: Fix new event category check.
* commit '394f29e7618952fb6eee7ca53f434b418bbd3ded': Zen: Fix new event category check.
-rw-r--r--services/core/java/com/android/server/notification/ZenModeHelper.java68
1 files changed, 35 insertions, 33 deletions
diff --git a/services/core/java/com/android/server/notification/ZenModeHelper.java b/services/core/java/com/android/server/notification/ZenModeHelper.java
index 557a44e0cb7b..e6007bf704f8 100644
--- a/services/core/java/com/android/server/notification/ZenModeHelper.java
+++ b/services/core/java/com/android/server/notification/ZenModeHelper.java
@@ -150,48 +150,50 @@ public class ZenModeHelper {
}
public boolean shouldIntercept(NotificationRecord record) {
- if (mZenMode != Global.ZEN_MODE_OFF) {
- if (isSystem(record)) {
- return false;
- }
- if (isAlarm(record)) {
- if (mZenMode == Global.ZEN_MODE_NO_INTERRUPTIONS) {
- ZenLog.traceIntercepted(record, "alarm");
- return true;
+ if (isSystem(record)) {
+ return false;
+ }
+ switch (mZenMode) {
+ case Global.ZEN_MODE_NO_INTERRUPTIONS:
+ // #notevenalarms
+ ZenLog.traceIntercepted(record, "none");
+ return true;
+ case Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS:
+ if (isAlarm(record)) {
+ // Alarms are always priority
+ return false;
}
- return false;
- }
- // allow user-prioritized packages through in priority mode
- if (mZenMode == Global.ZEN_MODE_IMPORTANT_INTERRUPTIONS) {
+ // allow user-prioritized packages through in priority mode
if (record.getPackagePriority() == Notification.PRIORITY_MAX) {
ZenLog.traceNotIntercepted(record, "priorityApp");
return false;
}
- }
- if (isCall(record)) {
- if (!mConfig.allowCalls) {
- ZenLog.traceIntercepted(record, "!allowCalls");
- return true;
+ if (isCall(record)) {
+ if (!mConfig.allowCalls) {
+ ZenLog.traceIntercepted(record, "!allowCalls");
+ return true;
+ }
+ return shouldInterceptAudience(record);
}
- return shouldInterceptAudience(record);
- }
- if (isMessage(record)) {
- if (!mConfig.allowMessages) {
- ZenLog.traceIntercepted(record, "!allowMessages");
- return true;
+ if (isMessage(record)) {
+ if (!mConfig.allowMessages) {
+ ZenLog.traceIntercepted(record, "!allowMessages");
+ return true;
+ }
+ return shouldInterceptAudience(record);
}
- return shouldInterceptAudience(record);
- }
- if (isEvent(record)) {
- if (!mConfig.allowEvents) {
- ZenLog.traceIntercepted(record, "!allowEvents");
- return true;
+ if (isEvent(record)) {
+ if (!mConfig.allowEvents) {
+ ZenLog.traceIntercepted(record, "!allowEvents");
+ return true;
+ }
+ return false;
}
- }
- ZenLog.traceIntercepted(record, "!allowed");
- return true;
+ ZenLog.traceIntercepted(record, "!priority");
+ return true;
+ default:
+ return false;
}
- return false;
}
private boolean shouldInterceptAudience(NotificationRecord record) {