am e97f90b9: on screen off: convert heads up to full screen intent.
* commit 'e97f90b9bbe3e75db058827887a842c5f4a0dda0': on screen off: convert heads up to full screen intent.
This commit is contained in:
@@ -89,6 +89,7 @@ public abstract class BaseStatusBar extends SystemUI implements
|
||||
protected static final int MSG_CLOSE_SEARCH_PANEL = 1025;
|
||||
protected static final int MSG_SHOW_HEADS_UP = 1026;
|
||||
protected static final int MSG_HIDE_HEADS_UP = 1027;
|
||||
protected static final int MSG_ESCALATE_HEADS_UP = 1028;
|
||||
|
||||
protected static final boolean ENABLE_HEADS_UP = true;
|
||||
// scores above this threshold should be displayed in heads up mode.
|
||||
@@ -1035,6 +1036,12 @@ public abstract class BaseStatusBar extends SystemUI implements
|
||||
}
|
||||
}
|
||||
|
||||
protected void notifyHeadsUpScreenOn(boolean screenOn) {
|
||||
if (!screenOn && mInterruptingNotificationEntry != null) {
|
||||
mHandler.sendEmptyMessage(MSG_ESCALATE_HEADS_UP);
|
||||
}
|
||||
}
|
||||
|
||||
protected boolean shouldInterrupt(StatusBarNotification sbn) {
|
||||
Notification notification = sbn.getNotification();
|
||||
// some predicates to make the boolean logic legible
|
||||
|
||||
@@ -1354,6 +1354,27 @@ public class PhoneStatusBar extends BaseStatusBar {
|
||||
setHeadsUpVisibility(false);
|
||||
mInterruptingNotificationEntry = null;
|
||||
break;
|
||||
case MSG_ESCALATE_HEADS_UP:
|
||||
escalateHeadsUp();
|
||||
setHeadsUpVisibility(false);
|
||||
mInterruptingNotificationEntry = null;
|
||||
break;
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
/** if the interrupting notification had a fullscreen intent, fire it now. */
|
||||
private void escalateHeadsUp() {
|
||||
if (mInterruptingNotificationEntry != null) {
|
||||
final StatusBarNotification sbn = mInterruptingNotificationEntry.notification;
|
||||
final Notification notification = sbn.getNotification();
|
||||
if (notification.fullScreenIntent != null) {
|
||||
if (DEBUG)
|
||||
Log.d(TAG, "converting a heads up to fullScreen");
|
||||
try {
|
||||
notification.fullScreenIntent.send();
|
||||
} catch (PendingIntent.CanceledException e) {
|
||||
}
|
||||
}
|
||||
}
|
||||
}
|
||||
@@ -2516,6 +2537,7 @@ public class PhoneStatusBar extends BaseStatusBar {
|
||||
// no waiting!
|
||||
makeExpandedInvisible();
|
||||
notifyNavigationBarScreenOn(false);
|
||||
notifyHeadsUpScreenOn(false);
|
||||
}
|
||||
else if (Intent.ACTION_CONFIGURATION_CHANGED.equals(action)) {
|
||||
if (DEBUG) {
|
||||
|
||||
Reference in New Issue
Block a user