Merge "Re-enable dismiss in any direction" into qt-dev
am: 34e3123201
Change-Id: I5faafd7ef69c83df7bfbdd666bcc98cfaa60e5cb
This commit is contained in:
@@ -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
|
||||
|
||||
@@ -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);
|
||||
}
|
||||
};
|
||||
|
||||
|
||||
@@ -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();
|
||||
|
||||
Reference in New Issue
Block a user