diff --git a/services/core/java/com/android/server/wm/RecentsAnimationController.java b/services/core/java/com/android/server/wm/RecentsAnimationController.java index 57fca3aeea799..237846997e9ec 100644 --- a/services/core/java/com/android/server/wm/RecentsAnimationController.java +++ b/services/core/java/com/android/server/wm/RecentsAnimationController.java @@ -146,8 +146,6 @@ public class RecentsAnimationController implements DeathRecipient { @VisibleForTesting boolean mIsAddingTaskToTargets; - @VisibleForTesting - boolean mShouldAttachNavBarToAppDuringTransition; private boolean mNavigationBarAttachedToApp; private ActivityRecord mNavBarAttachedApp; @@ -379,8 +377,6 @@ public class RecentsAnimationController implements DeathRecipient { mDisplayId = displayId; mStatusBar = LocalServices.getService(StatusBarManagerInternal.class); mDisplayContent = service.mRoot.getDisplayContent(displayId); - mShouldAttachNavBarToAppDuringTransition = - mDisplayContent.getDisplayPolicy().shouldAttachNavBarToAppDuringTransition(); } /** @@ -577,7 +573,7 @@ public class RecentsAnimationController implements DeathRecipient { } private void attachNavigationBarToApp() { - if (!mShouldAttachNavBarToAppDuringTransition + if (!mDisplayContent.getDisplayPolicy().shouldAttachNavBarToAppDuringTransition() // Skip the case where the nav bar is controlled by fade rotation. || mDisplayContent.getAsyncRotationController() != null) { return; @@ -652,7 +648,7 @@ public class RecentsAnimationController implements DeathRecipient { } void animateNavigationBarForAppLaunch(long duration) { - if (!mShouldAttachNavBarToAppDuringTransition + if (!mDisplayContent.getDisplayPolicy().shouldAttachNavBarToAppDuringTransition() // Skip the case where the nav bar is controlled by fade rotation. || mDisplayContent.getAsyncRotationController() != null || mNavigationBarAttachedToApp diff --git a/services/tests/wmtests/src/com/android/server/wm/RecentsAnimationControllerTest.java b/services/tests/wmtests/src/com/android/server/wm/RecentsAnimationControllerTest.java index c131c84a50ce9..7092b0b5ac342 100644 --- a/services/tests/wmtests/src/com/android/server/wm/RecentsAnimationControllerTest.java +++ b/services/tests/wmtests/src/com/android/server/wm/RecentsAnimationControllerTest.java @@ -104,7 +104,6 @@ public class RecentsAnimationControllerTest extends WindowTestsBase { when(mMockRunner.asBinder()).thenReturn(new Binder()); mController = spy(new RecentsAnimationController(mWm, mMockRunner, mAnimationCallbacks, DEFAULT_DISPLAY)); - mController.mShouldAttachNavBarToAppDuringTransition = false; mRootHomeTask = mDefaultDisplay.getDefaultTaskDisplayArea().getRootHomeTask(); assertNotNull(mRootHomeTask); } @@ -814,13 +813,13 @@ public class RecentsAnimationControllerTest extends WindowTestsBase { } private void setupForShouldAttachNavBarDuringTransition() { - mController.mShouldAttachNavBarToAppDuringTransition = true; final WindowState navBar = spy(createWindow(null, TYPE_NAVIGATION_BAR, "NavigationBar")); mDefaultDisplay.getDisplayPolicy().addWindowLw(navBar, navBar.mAttrs); mWm.setRecentsAnimationController(mController); doReturn(navBar).when(mController).getNavigationBarWindow(); final DisplayPolicy displayPolicy = spy(mDefaultDisplay.getDisplayPolicy()); doReturn(displayPolicy).when(mDefaultDisplay).getDisplayPolicy(); + doReturn(true).when(displayPolicy).shouldAttachNavBarToAppDuringTransition(); } private static void initializeRecentsAnimationController(RecentsAnimationController controller, diff --git a/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java b/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java index 6cf2b2d7a31ec..74ba45c130e36 100644 --- a/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java +++ b/services/tests/wmtests/src/com/android/server/wm/ZOrderingTests.java @@ -500,7 +500,6 @@ public class ZOrderingTests extends WindowTestsBase { RecentsAnimationController controller = new RecentsAnimationController( mWm, mockRunner, null, displayId); spyOn(controller); - controller.mShouldAttachNavBarToAppDuringTransition = true; doReturn(mNavBarWindow).when(controller).getNavigationBarWindow(); mWm.setRecentsAnimationController(controller); @@ -508,6 +507,10 @@ public class ZOrderingTests extends WindowTestsBase { spyOn(mDisplayContent.mInputMethodWindow); doReturn(true).when(mDisplayContent.mInputMethodWindow).isVisible(); + DisplayPolicy policy = mDisplayContent.getDisplayPolicy(); + spyOn(policy); + doReturn(true).when(policy).shouldAttachNavBarToAppDuringTransition(); + // create home activity Task rootHomeTask = mDisplayContent.getDefaultTaskDisplayArea().getRootHomeTask(); final ActivityRecord homeActivity = new ActivityBuilder(mWm.mAtmService)