Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 3290f016 authored by Wei Sheng Shih's avatar Wei Sheng Shih Committed by Automerger Merge Worker
Browse files

Merge "Apply root task for launch activity animation." into udc-dev am: 181bcdba am: e2cdba05

parents 7de0ae35 e2cdba05
Loading
Loading
Loading
Loading
+21 −2
Original line number Diff line number Diff line
@@ -508,6 +508,26 @@ class ActivityLaunchAnimator(
            startAnimation(apps, nonApps, callback)
        }

        private fun findRootTaskIfPossible(
            apps: Array<out RemoteAnimationTarget>?
        ): RemoteAnimationTarget? {
            if (apps == null) {
                return null
            }
            var candidate: RemoteAnimationTarget? = null
            for (it in apps) {
                if (it.mode == RemoteAnimationTarget.MODE_OPENING) {
                    if (it.taskInfo != null && !it.hasAnimatingParent) {
                        return it
                    }
                    if (candidate == null) {
                        candidate = it
                    }
                }
            }
            return candidate
        }

        private fun startAnimation(
            apps: Array<out RemoteAnimationTarget>?,
            nonApps: Array<out RemoteAnimationTarget>?,
@@ -517,8 +537,7 @@ class ActivityLaunchAnimator(
                Log.d(TAG, "Remote animation started")
            }

            val window = apps?.firstOrNull { it.mode == RemoteAnimationTarget.MODE_OPENING }

            val window = findRootTaskIfPossible(apps)
            if (window == null) {
                Log.i(TAG, "Aborting the animation as no window is opening")
                removeTimeout()