diff options
| author | 2015-06-24 17:58:40 +0000 | |
|---|---|---|
| committer | 2015-06-24 17:58:40 +0000 | |
| commit | f249c3ee7be56438a3f9ff287f90c44ed7a56c19 (patch) | |
| tree | 19d58d30808995285d419da86b43c17a7a3165f3 | |
| parent | 900c7285f36f8d16e6cb9b7456491af46ba7d94c (diff) | |
| parent | ccba036dd37a99c3beaf1cdf58665109c4931b19 (diff) | |
am ccba036d: Merge "don\'t clear notification effects in response to peeks" into mnc-dev
* commit 'ccba036dd37a99c3beaf1cdf58665109c4931b19':
don't clear notification effects in response to peeks
6 files changed, 37 insertions, 6 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java index 9d6204c0e3b1..8d20772e8c5d 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/BaseStatusBar.java @@ -1617,8 +1617,9 @@ public abstract class BaseStatusBar extends SystemUI implements protected void handleVisibleToUserChanged(boolean visibleToUser) { try { if (visibleToUser) { - boolean clearNotificationEffects = mShowLockscreenNotifications || - (mState == StatusBarState.SHADE || mState == StatusBarState.SHADE_LOCKED); + boolean clearNotificationEffects = !isPanelFullyCollapsed() && + (mShowLockscreenNotifications || + (mState == StatusBarState.SHADE || mState == StatusBarState.SHADE_LOCKED)); mBarService.onPanelRevealed(clearNotificationEffects); } else { mBarService.onPanelHidden(); @@ -1629,6 +1630,19 @@ public abstract class BaseStatusBar extends SystemUI implements } /** + * Clear Buzz/Beep/Blink. + */ + public void clearNotificationEffects() { + try { + mBarService.clearNotificationEffects(); + } catch (RemoteException e) { + // Won't fail unless the world has ended. + } + } + + protected abstract boolean isPanelFullyCollapsed(); + + /** * Cancel this notification and tell the StatusBarManagerService / NotificationManagerService * about the failure. * diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpTouchHelper.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpTouchHelper.java index 10c35af1cfb3..df8c7fa02a67 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpTouchHelper.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/HeadsUpTouchHelper.java @@ -114,6 +114,7 @@ public class HeadsUpTouchHelper implements Gefingerpoken { / mPanel.getMaxPanelHeight()); mPanel.startExpandMotion(x, y, true /* startTracking */, expandedHeight + mNotificationsTopPadding); + mPanel.clearNotificattonEffects(); mHeadsUpManager.unpinAll(); return true; } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java index c30cb34592cb..cf0d670df473 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelView.java @@ -2340,4 +2340,8 @@ public class NotificationPanelView extends PanelView implements public void setPanelScrimMinFraction(float minFraction) { mBar.panelScrimMinFractionChanged(minFraction); } + + public void clearNotificattonEffects() { + mStatusBar.clearNotificationEffects(); + } } diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelBar.java index cf553ec4521f..e1a400d43638 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelBar.java @@ -28,6 +28,8 @@ import java.util.ArrayList; public abstract class PanelBar extends FrameLayout { public static final boolean DEBUG = false; public static final String TAG = PanelBar.class.getSimpleName(); + private static final boolean SPEW = false; + public static final void LOG(String fmt, Object... args) { if (!DEBUG) return; Log.v(TAG, String.format(fmt, args)); @@ -167,7 +169,7 @@ public abstract class PanelBar extends FrameLayout { public void panelExpansionChanged(PanelView panel, float frac, boolean expanded) { boolean fullyClosed = true; PanelView fullyOpenedPanel = null; - if (DEBUG) LOG("panelExpansionChanged: start state=%d panel=%s", mState, panel.getName()); + if (SPEW) LOG("panelExpansionChanged: start state=%d panel=%s", mState, panel.getName()); mPanelExpandedFractionSum = 0f; for (PanelView pv : mPanels) { pv.setVisibility(expanded ? View.VISIBLE : View.INVISIBLE); @@ -180,7 +182,7 @@ public abstract class PanelBar extends FrameLayout { fullyClosed = false; final float thisFrac = pv.getExpandedFraction(); mPanelExpandedFractionSum += thisFrac; - if (DEBUG) LOG("panelExpansionChanged: -> %s: f=%.1f", pv.getName(), thisFrac); + if (SPEW) LOG("panelExpansionChanged: -> %s: f=%.1f", pv.getName(), thisFrac); if (panel == pv) { if (thisFrac == 1f) fullyOpenedPanel = panel; } @@ -195,7 +197,7 @@ public abstract class PanelBar extends FrameLayout { onAllPanelsCollapsed(); } - if (DEBUG) LOG("panelExpansionChanged: end state=%d [%s%s ]", mState, + if (SPEW) LOG("panelExpansionChanged: end state=%d [%s%s ]", mState, (fullyOpenedPanel!=null)?" fullyOpened":"", fullyClosed?" fullyClosed":""); } @@ -241,7 +243,7 @@ public abstract class PanelBar extends FrameLayout { } public void onExpandingFinished() { - + if (DEBUG) LOG("onExpandingFinished"); } public void onClosingFinished() { 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 9e6dd7e86537..7f87485f3841 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PhoneStatusBar.java @@ -3290,6 +3290,11 @@ public class PhoneStatusBar extends BaseStatusBar implements DemoMode, return mState; } + @Override + protected boolean isPanelFullyCollapsed() { + return mNotificationPanel.isFullyCollapsed(); + } + public void showKeyguard() { if (mLaunchTransitionFadingAway) { mNotificationPanel.animate().cancel(); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java index a5684a4cc189..920b682bc7a5 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/tv/TvStatusBar.java @@ -125,6 +125,11 @@ public class TvStatusBar extends BaseStatusBar { } @Override + protected boolean isPanelFullyCollapsed() { + return false; + } + + @Override protected int getMaxKeyguardNotifications() { return 0; } |