diff options
author | Chris Wren <cwren@android.com> | 2013-08-22 09:15:01 -0700 |
---|---|---|
committer | Android Git Automerger <android-git-automerger@android.com> | 2013-08-22 09:15:01 -0700 |
commit | ff4e490d97497083856bef9ff4d71bf9d8d80749 (patch) | |
tree | 076a33f5534f1d3df4b3fe56ffa7dbce97b9f6bd /packages/SystemUI | |
parent | 49d686deaa3fc2a952a9a49b7212b09d10ecc65c (diff) | |
parent | 6d15a364f26bd61122bfdd127eee225ca65206f5 (diff) | |
download | frameworks_base-ff4e490d97497083856bef9ff4d71bf9d8d80749.zip frameworks_base-ff4e490d97497083856bef9ff4d71bf9d8d80749.tar.gz frameworks_base-ff4e490d97497083856bef9ff4d71bf9d8d80749.tar.bz2 |
am 6d15a364: use ONGOING as the signal not to auto-hide heads up
* commit '6d15a364f26bd61122bfdd127eee225ca65206f5':
use ONGOING as the signal not to auto-hide heads up
Diffstat (limited to 'packages/SystemUI')
3 files changed, 22 insertions, 20 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java index b8427f3..a3b492c 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java @@ -348,7 +348,8 @@ public abstract class BaseStatusBar extends SystemUI implements protected View updateNotificationVetoButton(View row, StatusBarNotification n) { View vetoButton = row.findViewById(R.id.veto); - if (n.isClearable()) { + if (n.isClearable() || (mInterruptingNotificationEntry != null + && mInterruptingNotificationEntry.row == row)) { final String _pkg = n.getPackageName(); final String _tag = n.getTag(); final int _id = n.getId(); @@ -437,7 +438,6 @@ public abstract class BaseStatusBar extends SystemUI implements } public void onHeadsUpDismissed() { - mHandler.sendEmptyMessage(MSG_HIDE_HEADS_UP); } @Override diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java index 6256721..02346d9 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -104,7 +104,7 @@ import java.util.ArrayList; public class PhoneStatusBar extends BaseStatusBar { static final String TAG = "PhoneStatusBar"; public static final boolean DEBUG = BaseStatusBar.DEBUG; - public static final boolean SPEW = DEBUG; + public static final boolean SPEW = false; public static final boolean DUMPTRUCK = true; // extra dumpsys info public static final boolean DEBUG_GESTURES = false; @@ -911,9 +911,9 @@ public class PhoneStatusBar extends BaseStatusBar { @Override public void resetHeadsUpDecayTimer() { - mHandler.removeMessages(MSG_HIDE_HEADS_UP); if (mUseHeadsUp && mHeadsUpNotificationDecay > 0 - && !mHeadsUpNotificationView.isInsistent()) { + && mHeadsUpNotificationView.isClearable()) { + mHandler.removeMessages(MSG_HIDE_HEADS_UP); mHandler.sendEmptyMessageDelayed(MSG_HIDE_HEADS_UP, mHeadsUpNotificationDecay); } } @@ -1066,7 +1066,7 @@ public class PhoneStatusBar extends BaseStatusBar { if (!mShowCarrierInPanel) return; // The idea here is to only show the carrier label when there is enough room to see it, // i.e. when there aren't enough notifications to fill the panel. - if (DEBUG) { + if (SPEW) { Log.d(TAG, String.format("pileh=%d scrollh=%d carrierh=%d", mPile.getHeight(), mScrollView.getHeight(), mCarrierLabelHeight)); } @@ -1110,7 +1110,7 @@ public class PhoneStatusBar extends BaseStatusBar { final boolean clearable = any && mNotificationData.hasClearableItems(); - if (DEBUG) { + if (SPEW) { Log.d(TAG, "setAreThereNotifications: N=" + mNotificationData.size() + " any=" + any + " clearable=" + clearable); } @@ -2295,7 +2295,7 @@ public class PhoneStatusBar extends BaseStatusBar { @Override public void updateExpandedViewPos(int thingy) { - if (DEBUG) Log.v(TAG, "updateExpandedViewPos"); + if (SPEW) Log.v(TAG, "updateExpandedViewPos"); // on larger devices, the notification panel is propped open a bit mNotificationPanel.setMinimumHeight( @@ -2524,14 +2524,16 @@ public class PhoneStatusBar extends BaseStatusBar { public void onHeadsUpDismissed() { if (mInterruptingNotificationEntry == null) return; - - try { - mBarService.onNotificationClear( - mInterruptingNotificationEntry.notification.getPackageName(), - mInterruptingNotificationEntry.notification.getTag(), - mInterruptingNotificationEntry.notification.getId()); - } catch (android.os.RemoteException ex) { - // oh well + mHandler.sendEmptyMessage(MSG_HIDE_HEADS_UP); + if (mHeadsUpNotificationView.isClearable()) { + try { + mBarService.onNotificationClear( + mInterruptingNotificationEntry.notification.getPackageName(), + mInterruptingNotificationEntry.notification.getTag(), + mInterruptingNotificationEntry.notification.getId()); + } catch (android.os.RemoteException ex) { + // oh well + } } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HeadsUpNotificationView.java b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HeadsUpNotificationView.java index da90fd1..f1fda78 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/policy/HeadsUpNotificationView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/policy/HeadsUpNotificationView.java @@ -38,6 +38,7 @@ import com.android.systemui.statusbar.NotificationData; public class HeadsUpNotificationView extends FrameLayout implements SwipeHelper.Callback, ExpandHelper.Callback { private static final String TAG = "HeadsUpNotificationView"; private static final boolean DEBUG = false; + private static final boolean SPEW = DEBUG; Rect mTmpRect = new Rect(); @@ -88,13 +89,12 @@ public class HeadsUpNotificationView extends FrameLayout implements SwipeHelper. return true; } - public boolean isInsistent() { - return mHeadsUp != null - && (mHeadsUp.notification.getNotification().flags & Notification.FLAG_INSISTENT) != 0; + public boolean isClearable() { + return mHeadsUp == null || mHeadsUp.notification.isClearable(); } public void setMargin(int notificationPanelMarginPx) { - if (DEBUG) Log.v(TAG, "setMargin() " + notificationPanelMarginPx); + if (SPEW) Log.v(TAG, "setMargin() " + notificationPanelMarginPx); if (mContentSlider != null) { FrameLayout.LayoutParams lp = (FrameLayout.LayoutParams) mContentSlider.getLayoutParams(); lp.setMarginStart(notificationPanelMarginPx); |