Merge changes from topics "caitlinshk-nssl-resetuser", "caitlinshk-nssl-snooze" into udc-qpr-dev

* changes:
  [Central Surfaces] NSSLC snoozes with NotificationsController directly.
  [Central Surfaces] Have NSSL call NotificationsController directly.
This commit is contained in:
Caitlin Shkuratov
2023-06-01 15:01:35 +00:00
committed by Android (Google) Code Review
6 changed files with 18 additions and 30 deletions

View File

@@ -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) {

View File

@@ -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;
@@ -431,7 +433,7 @@ public class NotificationStackScrollLayoutController {
@Override
public void onSnooze(StatusBarNotification sbn,
NotificationSwipeActionHelper.SnoozeOption snoozeOption) {
mCentralSurfaces.setNotificationSnoozed(sbn, snoozeOption);
mNotificationsController.setNotificationSnoozed(sbn, snoozeOption);
}
@Override
@@ -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(

View File

@@ -26,7 +26,6 @@ import android.content.pm.PackageManager;
import android.os.Bundle;
import android.os.PowerManager;
import android.os.UserHandle;
import android.service.notification.StatusBarNotification;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.RemoteAnimationAdapter;
@@ -44,7 +43,6 @@ import com.android.systemui.Dumpable;
import com.android.systemui.animation.ActivityLaunchAnimator;
import com.android.systemui.navigationbar.NavigationBarView;
import com.android.systemui.plugins.ActivityStarter.OnDismissAction;
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper;
import com.android.systemui.qs.QSPanelController;
import com.android.systemui.shade.ShadeViewController;
import com.android.systemui.shared.system.RemoteAnimationRunnerCompat;
@@ -293,8 +291,6 @@ public interface CentralSurfaces extends Dumpable, LifecycleOwner {
void readyForKeyguardDone();
void resetUserExpandedStates();
void setLockscreenUser(int newUserId);
void showKeyguard();
@@ -383,9 +379,6 @@ public interface CentralSurfaces extends Dumpable, LifecycleOwner {
boolean isDeviceInteractive();
void setNotificationSnoozed(StatusBarNotification sbn,
NotificationSwipeActionHelper.SnoozeOption snoozeOption);
void awakenDreams();
void clearNotificationEffects();

View File

@@ -173,7 +173,6 @@ import com.android.systemui.plugins.PluginDependencyProvider;
import com.android.systemui.plugins.PluginListener;
import com.android.systemui.plugins.PluginManager;
import com.android.systemui.plugins.qs.QS;
import com.android.systemui.plugins.statusbar.NotificationSwipeActionHelper.SnoozeOption;
import com.android.systemui.plugins.statusbar.StatusBarStateController;
import com.android.systemui.qs.QSFragment;
import com.android.systemui.qs.QSPanelController;
@@ -2314,7 +2313,7 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
mNotificationShadeWindowController.setNotTouchable(false);
}
finishBarAnimations();
resetUserExpandedStates();
mNotificationsController.resetUserExpandedStates();
}
Trace.endSection();
}
@@ -2333,11 +2332,6 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
}
};
@Override
public void resetUserExpandedStates() {
mNotificationsController.resetUserExpandedStates();
}
/**
* Notify the shade controller that the current user changed
*
@@ -3576,12 +3570,6 @@ public class CentralSurfacesImpl implements CoreStartable, CentralSurfaces {
}
};
@Override
public void setNotificationSnoozed(StatusBarNotification sbn, SnoozeOption snoozeOption) {
mNotificationsController.setNotificationSnoozed(sbn, snoozeOption);
}
@Override
public void awakenDreams() {
mUiBgExecutor.execute(() -> {

View File

@@ -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,

View File

@@ -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())