Merge "Fix notifications wrong corners after "clear all"" into udc-dev am: 3620213c62
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/23793183 Change-Id: I2ae65d7a1f39015c6e971a7ae3b2a4fcd537b85b Signed-off-by: Automerger Merge Worker <android-build-automerger-merge-worker@system.gserviceaccount.com>
This commit is contained in:
@@ -411,7 +411,8 @@ public class NotificationStackScrollLayoutController {
|
||||
}
|
||||
};
|
||||
|
||||
private final NotificationSwipeHelper.NotificationCallback mNotificationCallback =
|
||||
@VisibleForTesting
|
||||
final NotificationSwipeHelper.NotificationCallback mNotificationCallback =
|
||||
new NotificationSwipeHelper.NotificationCallback() {
|
||||
|
||||
@Override
|
||||
@@ -470,10 +471,11 @@ public class NotificationStackScrollLayoutController {
|
||||
*/
|
||||
|
||||
public void handleChildViewDismissed(View view) {
|
||||
// The View needs to clean up the Swipe states, e.g. roundness.
|
||||
mView.onSwipeEnd();
|
||||
if (mView.getClearAllInProgress()) {
|
||||
return;
|
||||
}
|
||||
mView.onSwipeEnd();
|
||||
if (view instanceof ExpandableNotificationRow) {
|
||||
ExpandableNotificationRow row = (ExpandableNotificationRow) view;
|
||||
if (row.isHeadsUp()) {
|
||||
|
||||
@@ -74,6 +74,7 @@ import com.android.systemui.statusbar.notification.collection.render.SectionHead
|
||||
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;
|
||||
import com.android.systemui.statusbar.notification.stack.NotificationSwipeHelper.NotificationCallback;
|
||||
import com.android.systemui.statusbar.notification.stack.ui.viewmodel.NotificationListViewModel;
|
||||
import com.android.systemui.statusbar.phone.CentralSurfaces;
|
||||
import com.android.systemui.statusbar.phone.HeadsUpManagerPhone;
|
||||
@@ -338,6 +339,36 @@ public class NotificationStackScrollLayoutControllerTest extends SysuiTestCase {
|
||||
MetricsProto.MetricsEvent.TYPE_ACTION));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void callSwipeCallbacksDuringClearAll() {
|
||||
initController(/* viewIsAttached= */ true);
|
||||
ExpandableNotificationRow row = mock(ExpandableNotificationRow.class);
|
||||
NotificationCallback notificationCallback = mController.mNotificationCallback;
|
||||
|
||||
when(mNotificationStackScrollLayout.getClearAllInProgress()).thenReturn(true);
|
||||
|
||||
notificationCallback.onBeginDrag(row);
|
||||
verify(mNotificationStackScrollLayout).onSwipeBegin(row);
|
||||
|
||||
notificationCallback.handleChildViewDismissed(row);
|
||||
verify(mNotificationStackScrollLayout).onSwipeEnd();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void callSwipeCallbacksDuringClearNotification() {
|
||||
initController(/* viewIsAttached= */ true);
|
||||
ExpandableNotificationRow row = mock(ExpandableNotificationRow.class);
|
||||
NotificationCallback notificationCallback = mController.mNotificationCallback;
|
||||
|
||||
when(mNotificationStackScrollLayout.getClearAllInProgress()).thenReturn(false);
|
||||
|
||||
notificationCallback.onBeginDrag(row);
|
||||
verify(mNotificationStackScrollLayout).onSwipeBegin(row);
|
||||
|
||||
notificationCallback.handleChildViewDismissed(row);
|
||||
verify(mNotificationStackScrollLayout).onSwipeEnd();
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testOnMenuClickedLogging() {
|
||||
ExpandableNotificationRow row = mock(ExpandableNotificationRow.class, RETURNS_DEEP_STUBS);
|
||||
|
||||
Reference in New Issue
Block a user