Fix not releasing touching state of the handle on divider bar
After ag/14340443, the touching state of divider handle won't be reset after tapping on divider bar. This makes sure to reset touching state whenever received cancel/up touch event. Bug: 186626153 Test: atest WMShellUnitTests Test: check the touching of the handle on divider bar will be reset after single tapping on divider bar. Change-Id: I8645d17cda8833aa75b108f863e48655a7c87feb
This commit is contained in:
@@ -139,11 +139,10 @@ public class DividerView extends FrameLayout implements View.OnTouchListener,
|
||||
break;
|
||||
case MotionEvent.ACTION_UP:
|
||||
case MotionEvent.ACTION_CANCEL:
|
||||
mVelocityTracker.addMovement(event);
|
||||
releaseTouching();
|
||||
|
||||
if (!mMoving) break;
|
||||
|
||||
mVelocityTracker.addMovement(event);
|
||||
mVelocityTracker.computeCurrentVelocity(1000 /* units */);
|
||||
final float velocity = isLandscape
|
||||
? mVelocityTracker.getXVelocity()
|
||||
|
||||
@@ -521,12 +521,14 @@ public class DividerView extends FrameLayout implements OnTouchListener,
|
||||
break;
|
||||
case MotionEvent.ACTION_UP:
|
||||
case MotionEvent.ACTION_CANCEL:
|
||||
mVelocityTracker.addMovement(event);
|
||||
|
||||
if (!mMoving) break;
|
||||
if (!mMoving) {
|
||||
stopDragging();
|
||||
break;
|
||||
}
|
||||
|
||||
x = (int) event.getRawX();
|
||||
y = (int) event.getRawY();
|
||||
mVelocityTracker.addMovement(event);
|
||||
mVelocityTracker.computeCurrentVelocity(1000);
|
||||
int position = calculatePosition(x, y);
|
||||
stopDragging(position, isHorizontalDivision() ? mVelocityTracker.getYVelocity()
|
||||
|
||||
Reference in New Issue
Block a user