Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 225518ad authored by Caitlin Cassidy's avatar Caitlin Cassidy Committed by Automerger Merge Worker
Browse files

Merge "[Status Bar Refactor] 3/N: Move PanelBar#onPanelExpansionChanged into...

Merge "[Status Bar Refactor] 3/N: Move PanelBar#onPanelExpansionChanged into PanelExpansionStateManager." into sc-v2-dev am: 19444c3a

Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/16102500

Change-Id: Ib894a517c659887457a3dd82e366a491e695f2e4
parents 339d9593 19444c3a
Loading
Loading
Loading
Loading
+2 −2
Original line number Diff line number Diff line
@@ -63,13 +63,13 @@ abstract class UdfpsAnimationViewController<T extends UdfpsAnimationView>

    @Override
    protected void onViewAttached() {
        mPanelExpansionStateManager.addListener(mPanelExpansionListener);
        mPanelExpansionStateManager.addExpansionListener(mPanelExpansionListener);
        mDumpManger.registerDumpable(getDumpTag(), this);
    }

    @Override
    protected void onViewDetached() {
        mPanelExpansionStateManager.removeListener(mPanelExpansionListener);
        mPanelExpansionStateManager.removeExpansionListener(mPanelExpansionListener);
        mDumpManger.unregisterDumpable(getDumpTag());
    }

+2 −2
Original line number Diff line number Diff line
@@ -126,7 +126,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
        mInputBouncerHiddenAmount = KeyguardBouncer.EXPANSION_HIDDEN;
        mIsBouncerVisible = mKeyguardViewManager.bouncerIsOrWillBeShowing();
        mConfigurationController.addCallback(mConfigurationListener);
        mPanelExpansionStateManager.addListener(mPanelExpansionListener);
        mPanelExpansionStateManager.addExpansionListener(mPanelExpansionListener);
        updateAlpha();
        updatePauseAuth();

@@ -145,7 +145,7 @@ public class UdfpsKeyguardViewController extends UdfpsAnimationViewController<Ud
        mKeyguardViewManager.removeAlternateAuthInterceptor(mAlternateAuthInterceptor);
        mKeyguardUpdateMonitor.requestFaceAuthOnOccludingApp(false);
        mConfigurationController.removeCallback(mConfigurationListener);
        mPanelExpansionStateManager.removeListener(mPanelExpansionListener);
        mPanelExpansionStateManager.removeExpansionListener(mPanelExpansionListener);
        if (mLockScreenShadeTransitionController.getUdfpsKeyguardViewController() == this) {
            mLockScreenShadeTransitionController.setUdfpsKeyguardViewController(null);
        }
+6 −2
Original line number Diff line number Diff line
@@ -53,6 +53,7 @@ import com.android.systemui.statusbar.events.SystemStatusAnimationScheduler;
import com.android.systemui.statusbar.phone.StatusBarIconController.DarkIconManager;
import com.android.systemui.statusbar.phone.ongoingcall.OngoingCallController;
import com.android.systemui.statusbar.phone.ongoingcall.OngoingCallListener;
import com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManager;
import com.android.systemui.statusbar.policy.EncryptionHelper;
import com.android.systemui.statusbar.policy.KeyguardStateController;

@@ -101,6 +102,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue
    private final StatusBarLocationPublisher mLocationPublisher;
    private final FeatureFlags mFeatureFlags;
    private final NotificationIconAreaController mNotificationIconAreaController;
    private final PanelExpansionStateManager mPanelExpansionStateManager;
    private final StatusBarIconController mStatusBarIconController;

    private List<String> mBlockedIcons = new ArrayList<>();
@@ -126,6 +128,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue
            SystemStatusAnimationScheduler animationScheduler,
            StatusBarLocationPublisher locationPublisher,
            NotificationIconAreaController notificationIconAreaController,
            PanelExpansionStateManager panelExpansionStateManager,
            FeatureFlags featureFlags,
            Lazy<Optional<StatusBar>> statusBarOptionalLazy,
            StatusBarIconController statusBarIconController,
@@ -140,6 +143,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue
        mAnimationScheduler = animationScheduler;
        mLocationPublisher = locationPublisher;
        mNotificationIconAreaController = notificationIconAreaController;
        mPanelExpansionStateManager = panelExpansionStateManager;
        mFeatureFlags = featureFlags;
        mStatusBarOptionalLazy = statusBarOptionalLazy;
        mStatusBarIconController = statusBarIconController;
@@ -363,7 +367,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue

    private boolean shouldHideNotificationIcons() {
        final Optional<StatusBar> statusBarOptional = mStatusBarOptionalLazy.get();
        if (!mStatusBar.isClosed()
        if (!mPanelExpansionStateManager.isClosed()
                && statusBarOptional.map(
                        StatusBar::hideStatusBarIconsWhenExpanded).orElse(false)) {
            return true;
@@ -409,7 +413,7 @@ public class CollapsedStatusBarFragment extends Fragment implements CommandQueue
     * don't set the clock GONE otherwise it'll mess up the animation.
     */
    private int clockHiddenMode() {
        if (!mStatusBar.isClosed() && !mKeyguardStateController.isShowing()
        if (!mPanelExpansionStateManager.isClosed() && !mKeyguardStateController.isShowing()
                && !mStatusBarStateController.isDozing()) {
            return View.INVISIBLE;
        }
+25 −32
Original line number Diff line number Diff line
@@ -35,9 +35,9 @@ import static com.android.systemui.statusbar.StatusBarState.KEYGUARD;
import static com.android.systemui.statusbar.StatusBarState.SHADE;
import static com.android.systemui.statusbar.StatusBarState.SHADE_LOCKED;
import static com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout.ROWS_ALL;
import static com.android.systemui.statusbar.phone.PanelBar.STATE_CLOSED;
import static com.android.systemui.statusbar.phone.PanelBar.STATE_OPEN;
import static com.android.systemui.statusbar.phone.PanelBar.STATE_OPENING;
import static com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManagerKt.STATE_CLOSED;
import static com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManagerKt.STATE_OPEN;
import static com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManagerKt.STATE_OPENING;

import static java.lang.Float.isNaN;

@@ -173,6 +173,7 @@ import com.android.systemui.statusbar.notification.stack.StackStateAnimator;
import com.android.systemui.statusbar.phone.LockscreenGestureLogger.LockscreenUiEvent;
import com.android.systemui.statusbar.phone.dagger.StatusBarComponent;
import com.android.systemui.statusbar.phone.panelstate.PanelExpansionStateManager;
import com.android.systemui.statusbar.phone.panelstate.PanelState;
import com.android.systemui.statusbar.policy.ConfigurationController;
import com.android.systemui.statusbar.policy.KeyguardQsUserSwitchController;
import com.android.systemui.statusbar.policy.KeyguardStateController;
@@ -782,6 +783,8 @@ public class NotificationPanelViewController extends PanelViewController {
                new DynamicPrivacyControlListener();
        dynamicPrivacyController.addListener(dynamicPrivacyControlListener);

        panelExpansionStateManager.addStateListener(this::onPanelStateChanged);

        mBottomAreaShadeAlphaAnimator = ValueAnimator.ofFloat(1f, 0);
        mBottomAreaShadeAlphaAnimator.addUpdateListener(animation -> {
            mBottomAreaShadeAlpha = (float) animation.getAnimatedValue();
@@ -1561,7 +1564,7 @@ public class NotificationPanelViewController extends PanelViewController {
            // it's possible that nothing animated, so we replicate the termination
            // conditions of panelExpansionChanged here
            // TODO(b/200063118): This can likely go away in a future refactor CL.
            mBar.updateState(STATE_CLOSED);
            getPanelExpansionStateManager().updateState(STATE_CLOSED);
        }
    }

@@ -1646,7 +1649,7 @@ public class NotificationPanelViewController extends PanelViewController {

    @Override
    public void fling(float vel, boolean expand) {
        GestureRecorder gr = ((PhoneStatusBarView) mBar).mBar.getGestureRecorder();
        GestureRecorder gr = mStatusBar.getGestureRecorder();
        if (gr != null) {
            gr.tag("fling " + ((vel > 0) ? "open" : "closed"), "notifications,v=" + vel);
        }
@@ -4672,18 +4675,14 @@ public class NotificationPanelViewController extends PanelViewController {
        mView.removeCallbacks(mMaybeHideExpandedRunnable);
    }

    private final PanelBar.PanelStateChangeListener mPanelStateChangeListener =
            new PanelBar.PanelStateChangeListener() {

                @PanelBar.PanelState
                private int mCurrentState = STATE_CLOSED;
    @PanelState
    private int mCurrentPanelState = STATE_CLOSED;

                @Override
                public void onStateChanged(@PanelBar.PanelState int state) {
    private void onPanelStateChanged(@PanelState int state) {
        mAmbientState.setIsShadeOpening(state == STATE_OPENING);
        updateQSExpansionEnabledAmbient();

                    if (state == STATE_OPEN && mCurrentState != state) {
        if (state == STATE_OPEN && mCurrentPanelState != state) {
            mView.sendAccessibilityEvent(AccessibilityEvent.TYPE_WINDOW_STATE_CHANGED);
        }
        if (state == STATE_OPENING) {
@@ -4694,14 +4693,8 @@ public class NotificationPanelViewController extends PanelViewController {
            // animation.
            mView.post(mMaybeHideExpandedRunnable);
        }
                    mCurrentState = state;
        mCurrentPanelState = state;
    }
            };

    public PanelBar.PanelStateChangeListener getPanelStateChangeListener() {
        return mPanelStateChangeListener;
    }


    /** Returns the handler that the status bar should forward touches to. */
    public PhoneStatusBarView.TouchEventHandler getStatusBarTouchEventHandler() {
+1 −1
Original line number Diff line number Diff line
@@ -447,7 +447,7 @@ public class NotificationShadeWindowViewController {
        setDragDownHelper(mLockscreenShadeTransitionController.getTouchHelper());

        mDepthController.setRoot(mView);
        mPanelExpansionStateManager.addListener(mDepthController);
        mPanelExpansionStateManager.addExpansionListener(mDepthController);
    }

    public NotificationShadeWindowView getView() {
Loading