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

Commit e64aff5b authored by Jeff DeCew's avatar Jeff DeCew Committed by Android (Google) Code Review
Browse files

Merge changes Iefe85dc6,If790ea9e,I194271e0 into main

* changes:
  NSSL takes Runnable instead of ShadeController
  NSSL takes a Runnable instead of NotificationsController
  Allow SerFlagsRule.setValue() in multivalent tests
parents 779bb8ef c1b24f12
Loading
Loading
Loading
Loading
+8 −22
Original line number Diff line number Diff line
@@ -94,9 +94,7 @@ import com.android.systemui.flags.RefactorFlag;
import com.android.systemui.plugins.ActivityStarter;
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper;
import com.android.systemui.res.R;
import com.android.systemui.shade.ShadeController;
import com.android.systemui.shade.TouchLogger;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.EmptyShadeView;
import com.android.systemui.statusbar.NotificationShelf;
import com.android.systemui.statusbar.StatusBarState;
@@ -109,7 +107,6 @@ import com.android.systemui.statusbar.notification.collection.render.GroupExpans
import com.android.systemui.statusbar.notification.collection.render.GroupMembershipManager;
import com.android.systemui.statusbar.notification.footer.shared.FooterViewRefactor;
import com.android.systemui.statusbar.notification.footer.ui.view.FooterView;
import com.android.systemui.statusbar.notification.init.NotificationsController;
import com.android.systemui.statusbar.notification.logging.NotificationLogger;
import com.android.systemui.statusbar.notification.row.ActivatableNotificationView;
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
@@ -146,8 +143,6 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
    private static final String TAG = "StackScroller";
    private static final boolean SPEW = Log.isLoggable(TAG, Log.VERBOSE);

    // Delay in milli-seconds before shade closes for clear all.
    private static final int DELAY_BEFORE_SHADE_CLOSE = 200;
    private boolean mShadeNeedsToClose = false;

    @VisibleForTesting
@@ -319,7 +314,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
        }
    };
    private NotificationStackScrollLogger mLogger;
    private NotificationsController mNotificationsController;
    private Runnable mResetUserExpandedStatesRunnable;
    private ActivityStarter mActivityStarter;
    private final int[] mTempInt2 = new int[2];
    private final HashSet<Runnable> mAnimationFinishedRunnables = new HashSet<>();
@@ -482,7 +477,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
    private final Rect mTmpRect = new Rect();
    private ClearAllListener mClearAllListener;
    private ClearAllAnimationListener mClearAllAnimationListener;
    private ShadeController mShadeController;
    private Runnable mClearAllFinishedWhilePanelExpandedRunnable;
    private Consumer<Boolean> mOnStackYChanged;

    private Interpolator mHideXInterpolator = Interpolators.FAST_OUT_SLOW_IN;
@@ -4114,7 +4109,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
        mAmbientState.setExpansionChanging(false);
        if (!mIsExpanded) {
            resetScrollPosition();
            mNotificationsController.resetUserExpandedStates();
            mResetUserExpandedStatesRunnable.run();
            clearTemporaryViews();
            clearUserLockedViews();
            resetAllSwipeState();
@@ -4316,21 +4311,12 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
            if (mShadeNeedsToClose) {
                mShadeNeedsToClose = false;
                if (mIsExpanded) {
                    collapseShadeDelayed();
                    mClearAllFinishedWhilePanelExpandedRunnable.run();
                }
            }
        }
    }

    private void collapseShadeDelayed() {
        postDelayed(
                () -> {
                    mShadeController.animateCollapseShade(
                            CommandQueue.FLAG_EXCLUDE_NONE);
                },
                DELAY_BEFORE_SHADE_CLOSE /* delayMillis */);
    }

    private void clearHeadsUpDisappearRunning() {
        for (int i = 0; i < getChildCount(); i++) {
            View view = getChildAt(i);
@@ -4747,8 +4733,8 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
        return max + getStackTranslation();
    }

    public void setNotificationsController(NotificationsController notificationsController) {
        this.mNotificationsController = notificationsController;
    public void setResetUserExpandedStatesRunnable(Runnable runnable) {
        this.mResetUserExpandedStatesRunnable = runnable;
    }

    public void setActivityStarter(ActivityStarter activityStarter) {
@@ -5681,8 +5667,8 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
        mFooterClearAllListener = listener;
    }

    void setShadeController(ShadeController shadeController) {
        mShadeController = shadeController;
    void setClearAllFinishedWhilePanelExpandedRunnable(Runnable runnable) {
        mClearAllFinishedWhilePanelExpandedRunnable = runnable;
    }

    /**
+9 −2
Original line number Diff line number Diff line
@@ -81,6 +81,7 @@ import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.power.domain.interactor.PowerInteractor;
import com.android.systemui.shade.ShadeController;
import com.android.systemui.shade.ShadeViewController;
import com.android.systemui.statusbar.CommandQueue;
import com.android.systemui.statusbar.LockscreenShadeTransitionController;
import com.android.systemui.statusbar.NotificationLockscreenUserManager;
import com.android.systemui.statusbar.NotificationLockscreenUserManager.UserChangedListener;
@@ -152,6 +153,8 @@ public class NotificationStackScrollLayoutController implements Dumpable {
    private static final String TAG = "StackScrollerController";
    private static final boolean DEBUG = Compile.IS_DEBUG && Log.isLoggable(TAG, Log.DEBUG);
    private static final String HIGH_PRIORITY = "high_priority";
    /** Delay in milli-seconds before shade closes for clear all. */
    private static final int DELAY_BEFORE_SHADE_CLOSE = 200;

    private final boolean mAllowLongPress;
    private final NotificationGutsManager mNotificationGutsManager;
@@ -754,7 +757,7 @@ public class NotificationStackScrollLayoutController implements Dumpable {
        mView.setController(this);
        mView.setLogger(mLogger);
        mView.setTouchHandler(new TouchHandler());
        mView.setNotificationsController(mNotificationsController);
        mView.setResetUserExpandedStatesRunnable(mNotificationsController::resetUserExpandedStates);
        mView.setActivityStarter(mActivityStarter);
        mView.setClearAllAnimationListener(this::onAnimationEnd);
        mView.setClearAllListener((selection) -> mUiEventLogger.log(
@@ -770,7 +773,11 @@ public class NotificationStackScrollLayoutController implements Dumpable {
                mView.setIsRemoteInputActive(active);
            }
        });
        mView.setShadeController(mShadeController);
        mView.setClearAllFinishedWhilePanelExpandedRunnable(()-> {
            final Runnable doCollapseRunnable = () ->
                    mShadeController.animateCollapseShade(CommandQueue.FLAG_EXCLUDE_NONE);
            mView.postDelayed(doCollapseRunnable, /* delayMillis = */ DELAY_BEFORE_SHADE_CLOSE);
        });
        mDumpManager.registerDumpable(mView);

        mKeyguardBypassController.registerOnBypassStateChangedListener(
+1 −3
Original line number Diff line number Diff line
@@ -82,7 +82,6 @@ import com.android.systemui.statusbar.notification.collection.NotificationEntry;
import com.android.systemui.statusbar.notification.collection.render.GroupExpansionManager;
import com.android.systemui.statusbar.notification.collection.render.GroupMembershipManager;
import com.android.systemui.statusbar.notification.footer.ui.view.FooterView;
import com.android.systemui.statusbar.notification.init.NotificationsController;
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
import com.android.systemui.statusbar.notification.row.ExpandableView;
import com.android.systemui.statusbar.phone.KeyguardBypassController;
@@ -116,7 +115,6 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
    private AmbientState mAmbientState;
    private TestableResources mTestableResources;
    @Rule public MockitoRule mockito = MockitoJUnit.rule();
    @Mock private NotificationsController mNotificationsController;
    @Mock private SysuiStatusBarStateController mBarState;
    @Mock private GroupMembershipManager mGroupMembershipManger;
    @Mock private GroupExpansionManager mGroupExpansionManager;
@@ -193,7 +191,7 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
        mStackScrollerInternal.initView(getContext(), mNotificationSwipeHelper,
                mNotificationStackSizeCalculator);
        mStackScroller = spy(mStackScrollerInternal);
        mStackScroller.setNotificationsController(mNotificationsController);
        mStackScroller.setResetUserExpandedStatesRunnable(()->{});
        mStackScroller.setEmptyShadeView(mEmptyShadeView);
        when(mStackScrollLayoutController.isHistoryEnabled()).thenReturn(true);
        when(mStackScrollLayoutController.getNotificationRoundnessManager())
+0 −0

File moved.