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