diff options
| author | 2021-01-17 03:39:59 +0000 | |
|---|---|---|
| committer | 2021-01-17 03:39:59 +0000 | |
| commit | 9f38e5e309e8496fb22d3cd502eebf5a8b55e6fb (patch) | |
| tree | e8e5f918932cfa2a9453e57fd613128affafa7b1 | |
| parent | eb9cf95d7f80427aa8010a34258e9afe5a876daf (diff) | |
| parent | a515d831ea18fa2c5b5b267807da2d248d8511b6 (diff) | |
Merge "Propagate shade open state from PanelBar to AmbientState"
6 files changed, 27 insertions, 0 deletions
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java index 2c501cbe9846..b5963ef443e7 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/AmbientState.java @@ -77,6 +77,7 @@ public class AmbientState { private Runnable mOnPulseHeightChangedListener; private ExpandableNotificationRow mTrackedHeadsUpRow; private float mAppearFraction; + private boolean mIsShadeOpening; /** Tracks the state from AlertingNotificationManager#hasNotifications() */ private boolean mHasAlertEntries; @@ -96,6 +97,14 @@ public class AmbientState { mBaseZHeight = getBaseHeight(mZDistanceBetweenElements); } + void setIsShadeOpening(boolean isOpening) { + mIsShadeOpening = isOpening; + } + + public boolean isShadeOpening() { + return mIsShadeOpening; + } + private static int getZDistanceBetweenElements(Context context) { return Math.max(1, context.getResources() .getDimensionPixelSize(R.dimen.z_distance_between_notifications)); diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java index 9e8385b8a61b..6abbc6bc2c36 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayout.java @@ -550,6 +550,10 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable } } + void setIsShadeOpening(boolean isOpening) { + mAmbientState.setIsShadeOpening(isOpening); + } + @Override @ShadeViewRefactor(RefactorComponent.SHADE_VIEW) protected void onFinishInflate() { diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java index f4d01f320e46..5126f5557b7a 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/notification/stack/NotificationStackScrollLayoutController.java @@ -271,6 +271,10 @@ public class NotificationStackScrollLayoutController { } }; + public void setIsShadeOpening(boolean isOpening) { + mView.setIsShadeOpening(isOpening); + } + private final OnMenuEventListener mMenuEventListener = new OnMenuEventListener() { @Override public void onMenuClicked( diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java index 5e716716301a..d132abe5860f 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/NotificationPanelViewController.java @@ -2408,6 +2408,11 @@ public class NotificationPanelViewController extends PanelViewController { } @Override + protected void setIsShadeOpening(boolean isOpening) { + mNotificationStackScrollLayoutController.setIsShadeOpening(isOpening); + } + + @Override protected void setOverExpansion(float overExpansion, boolean isPixels) { if (mConflictingQsExpansionGesture || mQsExpandImmediate) { return; 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 c1065189f716..a1112dc37b50 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelBar.java @@ -52,6 +52,9 @@ public abstract class PanelBar extends FrameLayout { public void go(int state) { if (DEBUG) LOG("go state: %d -> %d", mState, state); mState = state; + if (mPanel != null) { + mPanel.setIsShadeOpening(state == STATE_OPENING); + } } @Override diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java index 62ded0a2d6e1..da82986fe6b1 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/PanelViewController.java @@ -740,6 +740,8 @@ public abstract class PanelViewController { */ protected abstract boolean isTrackingBlocked(); + protected abstract void setIsShadeOpening(boolean isShadeOpening); + protected abstract void setOverExpansion(float overExpansion, boolean isPixels); protected abstract void onHeightUpdated(float expandedHeight); |