[Central Surfaces] Have NSSL call NotificationsController directly.
Removes a CentralSurfaces reference by having NSSL talk directly to NotificationsController instead of indirectly through CentralSurfacesImpl. Bug: 277764509 Bug: 277762009 Test: manual: verified NotificationsController#resetUserExpandedStates called on screen off and after collapsing the shade while on lockscreen Test: atest NotificationStackScrollLayoutControllerTest NotificationStackScrollLayoutTest Change-Id: I6137e77906862c84daa700d61983b399974609ad
This commit is contained in:
@@ -104,13 +104,13 @@ import com.android.systemui.statusbar.notification.NotificationUtils;
|
||||
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.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;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableView;
|
||||
import com.android.systemui.statusbar.notification.row.FooterView;
|
||||
import com.android.systemui.statusbar.notification.row.StackScrollerDecorView;
|
||||
import com.android.systemui.statusbar.phone.CentralSurfaces;
|
||||
import com.android.systemui.statusbar.phone.HeadsUpAppearanceController;
|
||||
import com.android.systemui.statusbar.phone.HeadsUpTouchHelper;
|
||||
import com.android.systemui.statusbar.phone.ScreenOffAnimationController;
|
||||
@@ -315,7 +315,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
|
||||
}
|
||||
};
|
||||
private NotificationStackScrollLogger mLogger;
|
||||
private CentralSurfaces mCentralSurfaces;
|
||||
private NotificationsController mNotificationsController;
|
||||
private ActivityStarter mActivityStarter;
|
||||
private final int[] mTempInt2 = new int[2];
|
||||
private boolean mGenerateChildOrderChangedEvent;
|
||||
@@ -3989,7 +3989,7 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
|
||||
mAmbientState.setExpansionChanging(false);
|
||||
if (!mIsExpanded) {
|
||||
resetScrollPosition();
|
||||
mCentralSurfaces.resetUserExpandedStates();
|
||||
mNotificationsController.resetUserExpandedStates();
|
||||
clearTemporaryViews();
|
||||
clearUserLockedViews();
|
||||
cancelActiveSwipe();
|
||||
@@ -4570,8 +4570,8 @@ public class NotificationStackScrollLayout extends ViewGroup implements Dumpable
|
||||
return max + getStackTranslation();
|
||||
}
|
||||
|
||||
public void setCentralSurfaces(CentralSurfaces centralSurfaces) {
|
||||
this.mCentralSurfaces = centralSurfaces;
|
||||
public void setNotificationsController(NotificationsController notificationsController) {
|
||||
this.mNotificationsController = notificationsController;
|
||||
}
|
||||
|
||||
public void setActivityStarter(ActivityStarter activityStarter) {
|
||||
|
||||
@@ -100,6 +100,7 @@ import com.android.systemui.statusbar.notification.collection.render.NotifStats;
|
||||
import com.android.systemui.statusbar.notification.collection.render.NotificationVisibilityProvider;
|
||||
import com.android.systemui.statusbar.notification.collection.render.SectionHeaderController;
|
||||
import com.android.systemui.statusbar.notification.dagger.SilentHeader;
|
||||
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,6 +147,7 @@ public class NotificationStackScrollLayoutController {
|
||||
|
||||
private final boolean mAllowLongPress;
|
||||
private final NotificationGutsManager mNotificationGutsManager;
|
||||
private final NotificationsController mNotificationsController;
|
||||
private final NotificationVisibilityProvider mVisibilityProvider;
|
||||
private final HeadsUpManagerPhone mHeadsUpManager;
|
||||
private final NotificationRoundnessManager mNotificationRoundnessManager;
|
||||
@@ -616,6 +618,7 @@ public class NotificationStackScrollLayoutController {
|
||||
NotificationStackScrollLayout view,
|
||||
@Named(ALLOW_NOTIFICATION_LONG_PRESS_NAME) boolean allowLongPress,
|
||||
NotificationGutsManager notificationGutsManager,
|
||||
NotificationsController notificationsController,
|
||||
NotificationVisibilityProvider visibilityProvider,
|
||||
HeadsUpManagerPhone headsUpManager,
|
||||
NotificationRoundnessManager notificationRoundnessManager,
|
||||
@@ -664,6 +667,7 @@ public class NotificationStackScrollLayoutController {
|
||||
mLogger = logger;
|
||||
mAllowLongPress = allowLongPress;
|
||||
mNotificationGutsManager = notificationGutsManager;
|
||||
mNotificationsController = notificationsController;
|
||||
mVisibilityProvider = visibilityProvider;
|
||||
mHeadsUpManager = headsUpManager;
|
||||
mNotificationRoundnessManager = notificationRoundnessManager;
|
||||
@@ -714,7 +718,7 @@ public class NotificationStackScrollLayoutController {
|
||||
mView.setController(this);
|
||||
mView.setLogger(mLogger);
|
||||
mView.setTouchHandler(new TouchHandler());
|
||||
mView.setCentralSurfaces(mCentralSurfaces);
|
||||
mView.setNotificationsController(mNotificationsController);
|
||||
mView.setActivityStarter(mActivityStarter);
|
||||
mView.setClearAllAnimationListener(this::onAnimationEnd);
|
||||
mView.setClearAllListener((selection) -> mUiEventLogger.log(
|
||||
|
||||
@@ -293,8 +293,6 @@ public interface CentralSurfaces extends Dumpable, LifecycleOwner {
|
||||
|
||||
void readyForKeyguardDone();
|
||||
|
||||
void resetUserExpandedStates();
|
||||
|
||||
void setLockscreenUser(int newUserId);
|
||||
|
||||
void showKeyguard();
|
||||
|
||||
@@ -2314,7 +2314,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
mNotificationShadeWindowController.setNotTouchable(false);
|
||||
}
|
||||
finishBarAnimations();
|
||||
resetUserExpandedStates();
|
||||
mNotificationsController.resetUserExpandedStates();
|
||||
}
|
||||
Trace.endSection();
|
||||
}
|
||||
@@ -2333,11 +2333,6 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
|
||||
}
|
||||
};
|
||||
|
||||
@Override
|
||||
public void resetUserExpandedStates() {
|
||||
mNotificationsController.resetUserExpandedStates();
|
||||
}
|
||||
|
||||
/**
|
||||
* Notify the shade controller that the current user changed
|
||||
*
|
||||
|
||||
@@ -71,6 +71,7 @@ import com.android.systemui.statusbar.notification.collection.render.GroupExpans
|
||||
import com.android.systemui.statusbar.notification.collection.render.NotifStats;
|
||||
import com.android.systemui.statusbar.notification.collection.render.NotificationVisibilityProvider;
|
||||
import com.android.systemui.statusbar.notification.collection.render.SectionHeaderController;
|
||||
import com.android.systemui.statusbar.notification.init.NotificationsController;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.notification.row.NotificationGutsManager;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayoutController.NotificationPanelEvent;
|
||||
@@ -106,6 +107,7 @@ import java.util.Optional;
|
||||
public class NotificationStackScrollLayoutControllerTest extends SysuiTestCase {
|
||||
|
||||
@Mock private NotificationGutsManager mNotificationGutsManager;
|
||||
@Mock private NotificationsController mNotificationsController;
|
||||
@Mock private NotificationVisibilityProvider mVisibilityProvider;
|
||||
@Mock private HeadsUpManagerPhone mHeadsUpManager;
|
||||
@Mock private NotificationRoundnessManager mNotificationRoundnessManager;
|
||||
@@ -455,6 +457,7 @@ public class NotificationStackScrollLayoutControllerTest extends SysuiTestCase {
|
||||
mNotificationStackScrollLayout,
|
||||
true,
|
||||
mNotificationGutsManager,
|
||||
mNotificationsController,
|
||||
mVisibilityProvider,
|
||||
mHeadsUpManager,
|
||||
mNotificationRoundnessManager,
|
||||
|
||||
@@ -79,9 +79,9 @@ import com.android.systemui.statusbar.SysuiStatusBarStateController;
|
||||
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.init.NotificationsController;
|
||||
import com.android.systemui.statusbar.notification.row.ExpandableNotificationRow;
|
||||
import com.android.systemui.statusbar.notification.row.FooterView;
|
||||
import com.android.systemui.statusbar.phone.CentralSurfaces;
|
||||
import com.android.systemui.statusbar.phone.KeyguardBypassController;
|
||||
import com.android.systemui.statusbar.phone.StatusBarKeyguardViewManager;
|
||||
import com.android.systemui.statusbar.phone.UnlockedScreenOffAnimationController;
|
||||
@@ -114,7 +114,7 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
|
||||
private TestableResources mTestableResources;
|
||||
|
||||
@Rule public MockitoRule mockito = MockitoJUnit.rule();
|
||||
@Mock private CentralSurfaces mCentralSurfaces;
|
||||
@Mock private NotificationsController mNotificationsController;
|
||||
@Mock private SysuiStatusBarStateController mBarState;
|
||||
@Mock private GroupMembershipManager mGroupMembershipManger;
|
||||
@Mock private GroupExpansionManager mGroupExpansionManager;
|
||||
@@ -181,7 +181,7 @@ public class NotificationStackScrollLayoutTest extends SysuiTestCase {
|
||||
mNotificationStackSizeCalculator);
|
||||
mStackScroller = spy(mStackScrollerInternal);
|
||||
mStackScroller.setShelfController(notificationShelfController);
|
||||
mStackScroller.setCentralSurfaces(mCentralSurfaces);
|
||||
mStackScroller.setNotificationsController(mNotificationsController);
|
||||
mStackScroller.setEmptyShadeView(mEmptyShadeView);
|
||||
when(mStackScrollLayoutController.isHistoryEnabled()).thenReturn(true);
|
||||
when(mStackScrollLayoutController.getNotificationRoundnessManager())
|
||||
|
||||
Reference in New Issue
Block a user