From fa8a5ac6155e4bbb35bc898f9e029a682062618a Mon Sep 17 00:00:00 2001 From: Sunny Goyal Date: Wed, 7 Feb 2018 13:29:42 -0800 Subject: Fixing swipe on nav-bar does not work on launcher when in multi-window mode Change-Id: I0d2a15c14efc48455af1aaf829504fd3bb31c0a5 --- src/com/android/launcher3/dragndrop/DragLayer.java | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'src/com/android/launcher3/dragndrop/DragLayer.java') diff --git a/src/com/android/launcher3/dragndrop/DragLayer.java b/src/com/android/launcher3/dragndrop/DragLayer.java index a32f6b1dc..1cf407eb9 100644 --- a/src/com/android/launcher3/dragndrop/DragLayer.java +++ b/src/com/android/launcher3/dragndrop/DragLayer.java @@ -159,6 +159,10 @@ public class DragLayer extends InsettableFrameLayout { } else if (action == MotionEvent.ACTION_DOWN) { mLauncher.finishAutoCancelActionMode(); } + return findActiveController(ev); + } + + private boolean findActiveController(MotionEvent ev) { mActiveController = null; AbstractFloatingView topView = AbstractFloatingView.getTopOpenView(mLauncher); @@ -285,8 +289,10 @@ public class DragLayer extends InsettableFrameLayout { if (mActiveController != null) { return mActiveController.onControllerTouchEvent(ev); + } else { + // In case no child view handled the touch event, we may not get onIntercept anymore + return findActiveController(ev); } - return false; } /** -- cgit v1.2.3