OSDN Git Service

Don't show the dismiss target if trying to drag the flyout.
authorJoshua Tsuji <tsuji@google.com>
Wed, 3 Apr 2019 19:15:19 +0000 (15:15 -0400)
committerJosh Tsuji <tsuji@google.com>
Wed, 3 Apr 2019 19:55:31 +0000 (19:55 +0000)
Also, make dragging the flyout a no-op until the gesture is added. Tapping still expands the bubbles.

Test: manual
Change-Id: Ida96465e3db923e0b08a0cf0cf41dd97cddbe606

packages/SystemUI/src/com/android/systemui/bubbles/BubbleTouchHandler.java

index 0d8cb63..baeedaa 100644 (file)
@@ -97,11 +97,13 @@ class BubbleTouchHandler implements View.OnTouchListener {
             case MotionEvent.ACTION_DOWN:
                 trackMovement(event);
 
-                mDismissViewController.createDismissTarget();
-                mHandler.postDelayed(mShowDismissAffordance, SHOW_TARGET_DELAY);
-
                 mTouchDown.set(rawX, rawY);
 
+                if (!isFlyout) {
+                    mDismissViewController.createDismissTarget();
+                    mHandler.postDelayed(mShowDismissAffordance, SHOW_TARGET_DELAY);
+                }
+
                 if (isStack) {
                     mViewPositionOnTouchDown.set(mStack.getStackPosition());
                     mStack.onDragStart();
@@ -148,7 +150,7 @@ class BubbleTouchHandler implements View.OnTouchListener {
                     mController.dismissStack(BubbleController.DISMISS_USER_GESTURE);
                 } else if (isFlyout) {
                     // TODO(b/129768381): Expand if tapped, dismiss if swiped away.
-                    if (!mStack.isExpanded()) {
+                    if (!mStack.isExpanded() && !mMovedEnough) {
                         mStack.expandStack();
                     }
                 } else if (mMovedEnough) {