From 2ef8f190ee6e601b5700df3ad5b338c4ad86a953 Mon Sep 17 00:00:00 2001 From: Beverly Date: Tue, 24 Aug 2021 13:00:25 -0400 Subject: [PATCH] Send initial status bar expansion state to listeners When the listeners registered and when the status bar view is set. Test: manual Fixes: 197624582 Change-Id: If6689c3459d212e234b92680b9d63c2934312304 --- .../android/systemui/statusbar/phone/StatusBar.java | 12 ++++++++++++ 1 file changed, 12 insertions(+) diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java index be0130899e617..4fcaa6855f653 100644 --- a/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java +++ b/packages/SystemUI/src/com/android/systemui/statusbar/phone/StatusBar.java @@ -1135,6 +1135,10 @@ public class StatusBar extends SystemUI implements mStatusBarView.setPanel(mNotificationPanelViewController); mStatusBarView.setScrimController(mScrimController); mStatusBarView.setExpansionChangedListeners(mExpansionChangedListeners); + for (ExpansionChangedListener listener : mExpansionChangedListeners) { + sendInitialExpansionAmount(listener); + } + mPhoneStatusBarViewController = new PhoneStatusBarViewController(mStatusBarView, mCommandQueue); mPhoneStatusBarViewController.init(); @@ -4161,6 +4165,14 @@ public class StatusBar extends SystemUI implements public void addExpansionChangedListener(@NonNull ExpansionChangedListener listener) { mExpansionChangedListeners.add(listener); + sendInitialExpansionAmount(listener); + } + + private void sendInitialExpansionAmount(ExpansionChangedListener expansionChangedListener) { + if (mStatusBarView != null) { + expansionChangedListener.onExpansionChanged(mStatusBarView.getExpansionFraction(), + mStatusBarView.isExpanded()); + } } public void removeExpansionChangedListener(@NonNull ExpansionChangedListener listener) {