diff options
2 files changed, 20 insertions, 7 deletions
diff --git a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutState.kt b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutState.kt index 3bf2ed50b709..b3fd097946d0 100644 --- a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutState.kt +++ b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/SceneTransitionLayoutState.kt @@ -354,6 +354,7 @@ internal class MutableSceneTransitionLayoutStateImpl( } override suspend fun startTransition(transition: TransitionState.Transition, chain: Boolean) { + Log.i(TAG, "startTransition(transition=$transition, chain=$chain)") checkThread() // Prepare the transition before starting it. This is outside of the try/finally block on @@ -486,6 +487,7 @@ internal class MutableSceneTransitionLayoutStateImpl( return } + Log.i(TAG, "finishTransition(transition=$transition)") check(transitionStates.fastAll { it is TransitionState.Transition }) // Mark this transition as finished. @@ -513,13 +515,10 @@ internal class MutableSceneTransitionLayoutStateImpl( // If all transitions are finished, we are idle. if (i == nStates) { check(finishedTransitions.isEmpty()) - this.transitionStates = - listOf( - TransitionState.Idle( - lastTransition.currentScene, - lastTransition.currentOverlays, - ) - ) + val idle = + TransitionState.Idle(lastTransition.currentScene, lastTransition.currentOverlays) + Log.i(TAG, "all transitions finished. idle=$idle") + this.transitionStates = listOf(idle) } else if (i > 0) { this.transitionStates = transitionStates.subList(fromIndex = i, toIndex = nStates) } diff --git a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/state/TransitionState.kt b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/state/TransitionState.kt index 33f015fe49d9..d66fe42084de 100644 --- a/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/state/TransitionState.kt +++ b/packages/SystemUI/compose/scene/src/com/android/compose/animation/scene/content/state/TransitionState.kt @@ -90,6 +90,10 @@ sealed interface TransitionState { // The set of overlays does not change in a [ChangeCurrentScene] transition. return currentOverlaysWhenTransitionStarted } + + override fun toString(): String { + return "ChangeScene(fromScene=$fromScene, toScene=$toScene)" + } } /** @@ -146,6 +150,12 @@ sealed interface TransitionState { currentOverlaysWhenTransitionStarted - overlay } } + + override fun toString(): String { + val isShowing = overlay == toContent + return "ShowOrHideOverlay(overlay=$overlay, fromOrToScene=$fromOrToScene, " + + "isShowing=$isShowing)" + } } /** We are transitioning from [fromOverlay] to [toOverlay]. */ @@ -194,6 +204,10 @@ sealed interface TransitionState { add(include) } } + + override fun toString(): String { + return "ReplaceOverlay(fromOverlay=$fromOverlay, toOverlay=$toOverlay)" + } } /** |