Loading services/core/java/com/android/server/wm/RecentsAnimationController.java +2 −1 Original line number Diff line number Diff line Loading @@ -952,7 +952,8 @@ public class RecentsAnimationController implements DeathRecipient { "cleanupAnimation(): Notify animation finished mPendingAnimations=%d " + "reorderMode=%d", mPendingAnimations.size(), reorderMode); if (reorderMode != REORDER_MOVE_TO_ORIGINAL_POSITION) { if (reorderMode != REORDER_MOVE_TO_ORIGINAL_POSITION && mTargetActivityRecord != mDisplayContent.topRunningActivity()) { // Notify the state at the beginning because the removeAnimation may notify the // transition is finished. This is a signal that there will be a next transition. mDisplayContent.mFixedRotationTransitionListener.notifyRecentsWillBeTop(); Loading services/tests/wmtests/src/com/android/server/wm/RecentsAnimationControllerTest.java +6 −0 Original line number Diff line number Diff line Loading @@ -701,6 +701,12 @@ public class RecentsAnimationControllerTest extends WindowTestsBase { // Continue the animation (simulating a call to cleanupScreenshot()) mController.continueDeferredCancelAnimation(); verify(mAnimationCallbacks).onAnimationFinished(REORDER_MOVE_TO_TOP, false); // Assume home was moved to front so will-be-top callback should not be called. homeActivity.moveFocusableActivityToTop("test"); spyOn(mDefaultDisplay.mFixedRotationTransitionListener); mController.cleanupAnimation(REORDER_MOVE_TO_TOP); verify(mDefaultDisplay.mFixedRotationTransitionListener, never()).notifyRecentsWillBeTop(); } private ActivityRecord createHomeActivity() { Loading Loading
services/core/java/com/android/server/wm/RecentsAnimationController.java +2 −1 Original line number Diff line number Diff line Loading @@ -952,7 +952,8 @@ public class RecentsAnimationController implements DeathRecipient { "cleanupAnimation(): Notify animation finished mPendingAnimations=%d " + "reorderMode=%d", mPendingAnimations.size(), reorderMode); if (reorderMode != REORDER_MOVE_TO_ORIGINAL_POSITION) { if (reorderMode != REORDER_MOVE_TO_ORIGINAL_POSITION && mTargetActivityRecord != mDisplayContent.topRunningActivity()) { // Notify the state at the beginning because the removeAnimation may notify the // transition is finished. This is a signal that there will be a next transition. mDisplayContent.mFixedRotationTransitionListener.notifyRecentsWillBeTop(); Loading
services/tests/wmtests/src/com/android/server/wm/RecentsAnimationControllerTest.java +6 −0 Original line number Diff line number Diff line Loading @@ -701,6 +701,12 @@ public class RecentsAnimationControllerTest extends WindowTestsBase { // Continue the animation (simulating a call to cleanupScreenshot()) mController.continueDeferredCancelAnimation(); verify(mAnimationCallbacks).onAnimationFinished(REORDER_MOVE_TO_TOP, false); // Assume home was moved to front so will-be-top callback should not be called. homeActivity.moveFocusableActivityToTop("test"); spyOn(mDefaultDisplay.mFixedRotationTransitionListener); mController.cleanupAnimation(REORDER_MOVE_TO_TOP); verify(mDefaultDisplay.mFixedRotationTransitionListener, never()).notifyRecentsWillBeTop(); } private ActivityRecord createHomeActivity() { Loading