summaryrefslogtreecommitdiffstats
path: root/packages/SystemUI
diff options
context:
space:
mode:
authorSelim Cinek <cinek@google.com>2015-10-06 01:59:50 +0000
committerAndroid (Google) Code Review <android-gerrit@google.com>2015-10-06 01:59:50 +0000
commit714a61cd586c789b18acfd0567cfea2b4ea170dd (patch)
treef152e2a13ed2b5bbc0f9083c58a056a3ef6abc34 /packages/SystemUI
parent8461f2fa02c4c2ca2eef5bae391f1d1ff2c28593 (diff)
parent01db67d9f74b47b54a529f6773a824cc6bdfe627 (diff)
downloadframeworks_base-714a61cd586c789b18acfd0567cfea2b4ea170dd.zip
frameworks_base-714a61cd586c789b18acfd0567cfea2b4ea170dd.tar.gz
frameworks_base-714a61cd586c789b18acfd0567cfea2b4ea170dd.tar.bz2
Merge "Ambient display now comes up immediately when a notification comes in" into mnc-dr-dev
Diffstat (limited to 'packages/SystemUI')
-rw-r--r--packages/SystemUI/res/values/config.xml2
-rw-r--r--packages/SystemUI/src/com/android/systemui/doze/DozeService.java13
2 files changed, 12 insertions, 3 deletions
diff --git a/packages/SystemUI/res/values/config.xml b/packages/SystemUI/res/values/config.xml
index 123ff78..5d06768 100644
--- a/packages/SystemUI/res/values/config.xml
+++ b/packages/SystemUI/res/values/config.xml
@@ -243,7 +243,7 @@
<bool name="doze_pulse_on_notifications">true</bool>
<!-- Doze: when to pulse after a buzzworthy notification arrives -->
- <string name="doze_pulse_schedule" translatable="false">1s,10s,30s,60s</string>
+ <string name="doze_pulse_schedule" translatable="false">10s,30s,60s</string>
<!-- Doze: maximum number of times the notification pulse schedule can be reset -->
<integer name="doze_pulse_schedule_resets">2</integer>
diff --git a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java
index 630d735..39423f2 100644
--- a/packages/SystemUI/src/com/android/systemui/doze/DozeService.java
+++ b/packages/SystemUI/src/com/android/systemui/doze/DozeService.java
@@ -88,6 +88,7 @@ public class DozeService extends DreamService {
private boolean mPowerSaveActive;
private boolean mCarMode;
private long mNotificationPulseTime;
+ private long mLastScheduleResetTime;
private long mEarliestPulseDueToLight;
private int mScheduleResetsRemaining;
@@ -356,13 +357,21 @@ public class DozeService extends DreamService {
return;
}
final long pulseDuration = mDozeParameters.getPulseDuration(false /*pickup*/);
- if ((notificationTimeMs - mNotificationPulseTime) < pulseDuration) {
+ boolean pulseImmediately = System.currentTimeMillis() >= notificationTimeMs;
+ if ((notificationTimeMs - mLastScheduleResetTime) >= pulseDuration) {
+ mScheduleResetsRemaining--;
+ mLastScheduleResetTime = notificationTimeMs;
+ } else if (!pulseImmediately){
if (DEBUG) Log.d(mTag, "Recently updated, not resetting schedule");
return;
}
- mScheduleResetsRemaining--;
if (DEBUG) Log.d(mTag, "mScheduleResetsRemaining = " + mScheduleResetsRemaining);
mNotificationPulseTime = notificationTimeMs;
+ if (pulseImmediately) {
+ DozeLog.traceNotificationPulse(0);
+ requestPulse(DozeLog.PULSE_REASON_NOTIFICATION);
+ }
+ // schedule the rest of the pulses
rescheduleNotificationPulse(true /*predicate*/);
}