Add SystemOnBackInvokedCallback to RecentsWindowManager
Flag: com.android.launcher3.enable_fallback_overview_in_window
Fixes: 377542369
Test: home/app -> overview -> back gesture/button
Change-Id: Iefbad3748f72a516bd07a2db433dfe5ac23edcd8
diff --git a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt
index 74f9901..0d87997 100644
--- a/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt
+++ b/quickstep/src/com/android/quickstep/fallback/window/RecentsWindowManager.kt
@@ -216,6 +216,11 @@
)
}
+ private val onBackInvokedCallback: () -> Unit = {
+ // If we are in live tile mode, launch the live task, otherwise return home
+ recentsView?.runningTaskView?.launchWithAnimation() ?: startHome()
+ }
+
private fun cleanupRecentsWindow() {
RecentsWindowProtoLogProxy.logCleanup(isShowing())
if (isShowing()) {
@@ -239,6 +244,10 @@
}
windowManager.addView(windowView, windowLayoutParams)
+ windowView
+ ?.findOnBackInvokedDispatcher()
+ ?.registerSystemOnBackInvokedCallback(onBackInvokedCallback)
+
windowView?.systemUiVisibility =
(View.SYSTEM_UI_FLAG_LAYOUT_STABLE or
View.SYSTEM_UI_FLAG_LAYOUT_FULLSCREEN or