Close KeyboardQuickSwitch if user taps outside the container.

Bug: 368119679
Change-Id: I3f0b1cacb76077daa5879ad93c195018948497f9
Test: open KQS via taskbar affordance, tap outside the container,
      observe KQS close
Flag: com.android.launcher3.taskbar_overflow
This commit is contained in:
Jon Miranda
2024-09-25 06:11:21 +00:00
parent 043025eb06
commit e40cc40619
2 changed files with 47 additions and 6 deletions
@@ -21,6 +21,7 @@ import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
import android.view.Gravity;
import android.view.KeyEvent;
import android.view.MotionEvent;
import android.view.animation.AnimationUtils;
import android.window.RemoteTransition;
@@ -31,6 +32,7 @@ import com.android.internal.jank.Cuj;
import com.android.launcher3.Utilities;
import com.android.launcher3.anim.AnimatorListeners;
import com.android.launcher3.taskbar.overlay.TaskbarOverlayContext;
import com.android.launcher3.taskbar.overlay.TaskbarOverlayDragLayer;
import com.android.launcher3.views.BaseDragLayer;
import com.android.quickstep.SystemUiProxy;
import com.android.quickstep.util.GroupTask;
@@ -236,6 +238,13 @@ public class KeyboardQuickSwitchViewController {
pw.println(prefix + "\tmWasDesktopTaskFilteredOut=" + mWasDesktopTaskFilteredOut);
}
/**
* @return True if the MotionEvent is over the {@link KeyboardQuickSwitchView}.
*/
protected boolean isEventOverKeyboardQuickSwitch(TaskbarOverlayDragLayer dl, MotionEvent ev) {
return dl.isEventOverView(mKeyboardQuickSwitchView, ev);
}
class ViewCallbacks {
boolean onKeyUp(int keyCode, KeyEvent event, boolean isRTL, boolean allowTraversal) {