Merge "[Notif] Disable long click listener after dismiss" into pi-dev
This commit is contained in:
@@ -1061,6 +1061,7 @@ public class ExpandableNotificationRow extends ActivatableNotificationView
|
||||
}
|
||||
|
||||
public void setDismissed(boolean fromAccessibility) {
|
||||
setLongPressListener(null);
|
||||
mDismissed = true;
|
||||
mGroupParentWhenDismissed = mNotificationParent;
|
||||
mRefocusOnDismiss = fromAccessibility;
|
||||
|
||||
@@ -18,7 +18,9 @@ package com.android.systemui.statusbar;
|
||||
|
||||
import static org.mockito.ArgumentMatchers.any;
|
||||
import static org.mockito.ArgumentMatchers.anyInt;
|
||||
import static org.mockito.ArgumentMatchers.eq;
|
||||
import static org.mockito.Mockito.mock;
|
||||
import static org.mockito.Mockito.reset;
|
||||
import static org.mockito.Mockito.spy;
|
||||
import static org.mockito.Mockito.times;
|
||||
import static org.mockito.Mockito.verify;
|
||||
@@ -32,6 +34,7 @@ import android.view.NotificationHeaderView;
|
||||
import android.view.View;
|
||||
|
||||
import com.android.systemui.SysuiTestCase;
|
||||
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
|
||||
import com.android.systemui.statusbar.notification.AboveShelfChangedListener;
|
||||
import com.android.systemui.statusbar.stack.NotificationChildrenContainer;
|
||||
|
||||
@@ -158,6 +161,22 @@ public class ExpandableNotificationRowTest extends SysuiTestCase {
|
||||
mGroup.isSoundEffectsEnabled());
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testSetDismissed_longPressListenerRemoved() {
|
||||
ExpandableNotificationRow.LongPressListener listener =
|
||||
mock(ExpandableNotificationRow.LongPressListener.class);
|
||||
mGroup.setLongPressListener(listener);
|
||||
mGroup.doLongClickCallback(0,0);
|
||||
verify(listener, times(1)).onLongPress(eq(mGroup), eq(0), eq(0),
|
||||
any(NotificationMenuRowPlugin.MenuItem.class));
|
||||
reset(listener);
|
||||
|
||||
mGroup.setDismissed(true);
|
||||
mGroup.doLongClickCallback(0,0);
|
||||
verify(listener, times(0)).onLongPress(eq(mGroup), eq(0), eq(0),
|
||||
any(NotificationMenuRowPlugin.MenuItem.class));
|
||||
}
|
||||
|
||||
@Test
|
||||
public void testShowAppOps_noHeader() {
|
||||
// public notification is custom layout - no header
|
||||
|
||||
Reference in New Issue
Block a user