From 3a9c464eb39fa5eb25100f8dcc0f1e5cd606928f Mon Sep 17 00:00:00 2001 From: Tiger Date: Wed, 20 Mar 2024 16:54:43 +0800 Subject: [PATCH] Let taskbar can trigger insets resize animation All the system bar can trigger insets resize animation before, but some sources might not have the resize animation. The framework now will only trigger insets resize animation for sources which apply FLAG_ANIMATE_RESIZING. So this CL applies the flag for gesture taskbar because it can toggle its size via "Always show Taskbar" Bug: 291562764 Flag: NA Test: Fold and unfold a foldable device and ensure that won't create InsetsResizeAnimationRunner. Merged-In: I0d915422d160a81f12c3992ffe53200fd957f6d7 Change-Id: I0d915422d160a81f12c3992ffe53200fd957f6d7 --- .../android/launcher3/taskbar/TaskbarInsetsController.kt | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt b/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt index 567fad02ac..7cad57be55 100644 --- a/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt +++ b/quickstep/src/com/android/launcher3/taskbar/TaskbarInsetsController.kt @@ -28,6 +28,7 @@ import android.view.DisplayInfo import android.view.Gravity import android.view.InsetsFrameProvider import android.view.InsetsFrameProvider.SOURCE_DISPLAY +import android.view.InsetsSource.FLAG_ANIMATE_RESIZING import android.view.InsetsSource.FLAG_INSETS_ROUNDED_CORNER import android.view.InsetsSource.FLAG_SUPPRESS_SCRIM import android.view.Surface @@ -192,10 +193,14 @@ class TaskbarInsetsController(val context: TaskbarActivityContext) : LoggableTas */ private fun getProvidedInsets(insetsRoundedCornerFlag: Int): Array { val navBarsFlag = - (if (context.isGestureNav) FLAG_SUPPRESS_SCRIM else 0) or insetsRoundedCornerFlag + (if (context.isGestureNav) FLAG_SUPPRESS_SCRIM or FLAG_ANIMATE_RESIZING else 0) or + insetsRoundedCornerFlag return arrayOf( InsetsFrameProvider(insetsOwner, 0, navigationBars()) - .setFlags(navBarsFlag, FLAG_SUPPRESS_SCRIM or FLAG_INSETS_ROUNDED_CORNER), + .setFlags( + navBarsFlag, + FLAG_SUPPRESS_SCRIM or FLAG_ANIMATE_RESIZING or FLAG_INSETS_ROUNDED_CORNER + ), InsetsFrameProvider(insetsOwner, 0, tappableElement()), InsetsFrameProvider(insetsOwner, 0, mandatorySystemGestures()), InsetsFrameProvider(insetsOwner, INDEX_LEFT, systemGestures())