Merge "Re-enable dismiss in any direction" into qt-dev

am: 34e3123201

Change-Id: I5faafd7ef69c83df7bfbdd666bcc98cfaa60e5cb
This commit is contained in:
Evan Laird
2019-05-01 12:02:22 -07:00
committed by android-build-merger
3 changed files with 17 additions and 19 deletions

View File

@@ -42,7 +42,6 @@ import com.android.systemui.Interpolators;
import com.android.systemui.R;
import com.android.systemui.plugins.statusbar.NotificationMenuRowPlugin;
import com.android.systemui.statusbar.AlphaOptimizedImageView;
import com.android.systemui.statusbar.notification.NotificationUtils;
import com.android.systemui.statusbar.notification.row.NotificationGuts.GutsContent;
import com.android.systemui.statusbar.notification.stack.NotificationStackScrollLayout;
@@ -80,7 +79,7 @@ public class NotificationMenuRow implements NotificationMenuRowPlugin, View.OnCl
private OnMenuEventListener mMenuListener;
private boolean mDismissRtl;
private boolean mIsForeground;
private final boolean mIsUsingNewInterruptionModel;
private final boolean mIsUsingBidirectionalSwipe;
private ValueAnimator mFadeAnimator;
private boolean mAnimating;
@@ -113,12 +112,19 @@ public class NotificationMenuRow implements NotificationMenuRowPlugin, View.OnCl
private boolean mIsUserTouching;
public NotificationMenuRow(Context context) {
//TODO: (b/131242807) not using bidirectional swipe for now
this(context, false);
}
// Only needed for testing until we want to turn bidirectional swipe back on
@VisibleForTesting
NotificationMenuRow(Context context, boolean isUsingBidirectionalSwipe) {
mContext = context;
mShouldShowMenu = context.getResources().getBoolean(R.bool.config_showNotificationGear);
mHandler = new Handler(Looper.getMainLooper());
mLeftMenuItems = new ArrayList<>();
mRightMenuItems = new ArrayList<>();
mIsUsingNewInterruptionModel = NotificationUtils.useNewInterruptionModel(mContext);
mIsUsingBidirectionalSwipe = isUsingBidirectionalSwipe;
}
@Override
@@ -255,13 +261,13 @@ public class NotificationMenuRow implements NotificationMenuRowPlugin, View.OnCl
mSnoozeItem = createSnoozeItem(mContext);
}
mAppOpsItem = createAppOpsItem(mContext);
if (mIsUsingNewInterruptionModel) {
if (mIsUsingBidirectionalSwipe) {
mInfoItem = createInfoItem(mContext, !mParent.getEntry().isHighPriority());
} else {
mInfoItem = createInfoItem(mContext);
}
if (!mIsUsingNewInterruptionModel) {
if (!mIsUsingBidirectionalSwipe) {
if (!isForeground) {
mRightMenuItems.add(mSnoozeItem);
}
@@ -618,12 +624,12 @@ public class NotificationMenuRow implements NotificationMenuRowPlugin, View.OnCl
@Override
public boolean shouldShowGutsOnSnapOpen() {
return mIsUsingNewInterruptionModel;
return mIsUsingBidirectionalSwipe;
}
@Override
public MenuItem menuItemToExposeOnSnap() {
return mIsUsingNewInterruptionModel ? mInfoItem : null;
return mIsUsingBidirectionalSwipe ? mInfoItem : null;
}
@Override

View File

@@ -6355,13 +6355,8 @@ public class NotificationStackScrollLayout extends ViewGroup implements ScrollAd
@Override
public boolean canChildBeDismissedInDirection(View v, boolean isRightOrDown) {
boolean isValidDirection;
if (NotificationUtils.useNewInterruptionModel(mContext)) {
isValidDirection = mDismissRtl ? !isRightOrDown : isRightOrDown;
} else {
isValidDirection = true;
}
return isValidDirection && canChildBeDismissed(v);
//TODO: b/131242807 for why this doesn't do anything with direction
return canChildBeDismissed(v);
}
};

View File

@@ -112,11 +112,8 @@ public class NotificationMenuRowTest extends LeakCheckedTest {
}
@Test
public void testNoAppOpsInSlowSwipe_newInterruptionModel() {
Settings.Secure.putInt(mContext.getContentResolver(),
NOTIFICATION_NEW_INTERRUPTION_MODEL, 1);
NotificationMenuRow row = new NotificationMenuRow(mContext);
public void testNoAppOpsInSlowSwipe_biDirectionalSwipe() {
NotificationMenuRow row = new NotificationMenuRow(mContext, true);
row.createMenu(mRow, null);
ViewGroup container = (ViewGroup) row.getMenuView();