Reset mActiveController to null in DragLayer.onInterceptTouchEvent().
Otherwise the previous active controller will continue to handle touch events even if it doesn't re-intercept future touches. For instance, All Apps was handling the swipe gesture after DragLayer intercepted to close a shortcuts container, which led to the weird behavior described in the bug. Bug: 30590854 Change-Id: I247b39b03d336a04659f6ce644380bf3cef8de3f
This commit is contained in:
parent
5a5eb846c4
commit
98cbd62e1f
|
@ -295,6 +295,8 @@ public class DragLayer extends InsettableFrameLayout {
|
||||||
}
|
}
|
||||||
clearAllResizeFrames();
|
clearAllResizeFrames();
|
||||||
|
|
||||||
|
mActiveController = null;
|
||||||
|
|
||||||
if (mDragController.onInterceptTouchEvent(ev)) {
|
if (mDragController.onInterceptTouchEvent(ev)) {
|
||||||
mActiveController = mDragController;
|
mActiveController = mDragController;
|
||||||
return true;
|
return true;
|
||||||
|
|
Loading…
Reference in New Issue