Merge "don't clear notification effects in response to peeks" into mnc-dev

This commit is contained in:
Chris Wren
2015-06-24 17:54:21 +00:00
committed by Android (Google) Code Review
6 changed files with 37 additions and 6 deletions

View File

@@ -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();
@@ -1628,6 +1629,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.

View File

@@ -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;
}

View File

@@ -2340,4 +2340,8 @@ public class NotificationPanelView extends PanelView implements
public void setPanelScrimMinFraction(float minFraction) {
mBar.panelScrimMinFractionChanged(minFraction);
}
public void clearNotificattonEffects() {
mStatusBar.clearNotificationEffects();
}
}

View File

@@ -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() {

View File

@@ -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();

View File

@@ -124,6 +124,11 @@ public class TvStatusBar extends BaseStatusBar {
public void maybeEscalateHeadsUp() {
}
@Override
protected boolean isPanelFullyCollapsed() {
return false;
}
@Override
protected int getMaxKeyguardNotifications() {
return 0;