am 76e4fa19: Merge "Only pulse notification light if a new notification has been received since the screen was last turned off" into gingerbread

Merge commit '76e4fa19264793e3ed7e2ee7afccfc808a1a7458' into gingerbread-plus-aosp

* commit '76e4fa19264793e3ed7e2ee7afccfc808a1a7458':
  Only pulse notification light if a new notification has been received since the screen was last turned off
This commit is contained in:
Mike Lockwood
2010-09-09 16:05:38 -07:00
committed by Android Git Automerger

View File

@@ -112,6 +112,10 @@ public class NotificationManagerService extends INotificationManager.Stub
private boolean mScreenOn = true;
private boolean mInCall = false;
private boolean mNotificationPulseEnabled;
// This is true if we have received a new notification while the screen is off
// (that is, if mLedNotification was set while the screen was off)
// This is reset to false when the screen is turned on.
private boolean mPendingPulseNotification;
// for adb connected notifications
private boolean mAdbNotificationShown = false;
@@ -1093,6 +1097,11 @@ public class NotificationManagerService extends INotificationManager.Stub
mBatteryLight.turnOff();
}
// clear pending pulse notification if screen is on
if (mScreenOn || mLedNotification == null) {
mPendingPulseNotification = false;
}
// handle notification lights
if (mLedNotification == null) {
// get next notification, if any
@@ -1100,11 +1109,14 @@ public class NotificationManagerService extends INotificationManager.Stub
if (n > 0) {
mLedNotification = mLights.get(n-1);
}
if (mLedNotification != null && !mScreenOn) {
mPendingPulseNotification = true;
}
}
// we only flash if screen is off and persistent pulsing is enabled
// and we are not currently in a call
if (mLedNotification == null || mScreenOn || mInCall) {
if (!mPendingPulseNotification || mScreenOn || mInCall) {
mNotificationLight.turnOff();
} else {
int ledARGB = mLedNotification.notification.ledARGB;