Merge "Prevent dismissal on RemoteInputView" into nyc-dev

This commit is contained in:
Adrian Roos
2016-04-28 00:02:43 +00:00
committed by Android (Google) Code Review
3 changed files with 17 additions and 2 deletions

View File

@@ -252,6 +252,7 @@ public class RemoteInputView extends LinearLayout implements View.OnClickListene
findScrollContainer();
if (mScrollContainer != null) {
mScrollContainer.requestDisallowLongPress();
mScrollContainer.requestDisallowDismiss();
}
}
return super.onInterceptTouchEvent(ev);

View File

@@ -232,6 +232,7 @@ public class NotificationStackScrollLayout extends ViewGroup
* animating.
*/
private boolean mOnlyScrollingInThisMotion;
private boolean mDisallowDismissInThisMotion;
private boolean mInterceptDelegateEnabled;
private boolean mDelegateToScrollView;
private boolean mDisallowScrollingInThisMotion;
@@ -1031,7 +1032,8 @@ public class NotificationStackScrollLayout extends ViewGroup
if (!mIsBeingDragged
&& !mExpandingNotification
&& !mExpandedInThisMotion
&& !mOnlyScrollingInThisMotion) {
&& !mOnlyScrollingInThisMotion
&& !mDisallowDismissInThisMotion) {
horizontalSwipeWantsIt = mSwipeHelper.onTouchEvent(ev);
}
return horizontalSwipeWantsIt || scrollerWantsIt || expandWantsIt || super.onTouchEvent(ev);
@@ -2013,7 +2015,8 @@ public class NotificationStackScrollLayout extends ViewGroup
if (!mIsBeingDragged
&& !mExpandingNotification
&& !mExpandedInThisMotion
&& !mOnlyScrollingInThisMotion) {
&& !mOnlyScrollingInThisMotion
&& !mDisallowDismissInThisMotion) {
swipeWantsIt = mSwipeHelper.onInterceptTouchEvent(ev);
}
return swipeWantsIt || scrollWantsIt || expandWantsIt || super.onInterceptTouchEvent(ev);
@@ -2041,6 +2044,7 @@ public class NotificationStackScrollLayout extends ViewGroup
mExpandedInThisMotion = false;
mOnlyScrollingInThisMotion = !mScroller.isFinished();
mDisallowScrollingInThisMotion = false;
mDisallowDismissInThisMotion = false;
mTouchIsClick = true;
mInitialTouchX = ev.getX();
mInitialTouchY = ev.getY();
@@ -2705,6 +2709,11 @@ public class NotificationStackScrollLayout extends ViewGroup
removeLongPressCallback();
}
@Override
public void requestDisallowDismiss() {
mDisallowDismissInThisMotion = true;
}
public void removeLongPressCallback() {
mSwipeHelper.removeLongPressCallback();
}

View File

@@ -33,4 +33,9 @@ public interface ScrollContainer {
* Request that the view is made visible by scrolling to it.
*/
void scrollTo(View v);
/**
* Request that the view does not dismiss for the current touch.
*/
void requestDisallowDismiss();
}