Loading packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java +4 −2 Original line number Diff line number Diff line Loading @@ -596,7 +596,8 @@ public class CommandQueue extends IStatusBar.Stub implements CallbackController< @Override public void appTransitionCancelled(int displayId) { synchronized (mLock) { mHandler.obtainMessage(MSG_APP_TRANSITION_CANCELLED, displayId).sendToTarget(); mHandler.obtainMessage(MSG_APP_TRANSITION_CANCELLED, displayId, 0 /* unused */) .sendToTarget(); } } Loading Loading @@ -624,7 +625,8 @@ public class CommandQueue extends IStatusBar.Stub implements CallbackController< @Override public void appTransitionFinished(int displayId) { synchronized (mLock) { mHandler.obtainMessage(MSG_APP_TRANSITION_FINISHED, displayId).sendToTarget(); mHandler.obtainMessage(MSG_APP_TRANSITION_FINISHED, displayId, 0 /* unused */) .sendToTarget(); } } Loading packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java +5 −2 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import android.view.IWindowManager; import android.view.View; import android.view.WindowManagerGlobal; import com.android.internal.annotations.VisibleForTesting; import com.android.systemui.Dependency; import com.android.systemui.plugins.DarkIconDispatcher; import com.android.systemui.statusbar.CommandQueue.Callbacks; Loading @@ -58,7 +59,8 @@ public class NavigationBarController implements Callbacks { private final DisplayManager mDisplayManager; /** A displayId - nav bar maps. */ private SparseArray<NavigationBarFragment> mNavigationBars = new SparseArray<>(); @VisibleForTesting SparseArray<NavigationBarFragment> mNavigationBars = new SparseArray<>(); @Inject public NavigationBarController(Context context, @Named(MAIN_HANDLER_NAME) Handler handler) { Loading Loading @@ -101,7 +103,8 @@ public class NavigationBarController implements Callbacks { * * @param display the display to add navigation bar on. */ private void createNavigationBar(Display display) { @VisibleForTesting void createNavigationBar(Display display) { if (display == null) { return; } Loading packages/SystemUI/src/com/android/systemui/statusbar/phone/AutoHideController.java +10 −5 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import android.view.IWindowManager; import android.view.MotionEvent; import android.view.View; import com.android.internal.annotations.VisibleForTesting; import com.android.systemui.Dependency; import com.android.systemui.SysUiServiceProvider; import com.android.systemui.statusbar.CommandQueue; Loading @@ -48,8 +49,10 @@ public class AutoHideController implements CommandQueue.Callbacks { private StatusBar mStatusBar; private NavigationBarFragment mNavigationBar; private int mDisplayId; private int mSystemUiVisibility; @VisibleForTesting int mDisplayId; @VisibleForTesting int mSystemUiVisibility; // last value sent to window manager private int mLastDispatchedSystemUiVisibility = ~View.SYSTEM_UI_FLAG_VISIBLE; Loading Loading @@ -123,7 +126,8 @@ public class AutoHideController implements CommandQueue.Callbacks { } } private void notifySystemUiVisibilityChanged(int vis) { @VisibleForTesting void notifySystemUiVisibilityChanged(int vis) { try { if (mLastDispatchedSystemUiVisibility != vis) { mWindowManagerService.statusBarVisibilityChanged(mDisplayId, vis); Loading Loading @@ -213,11 +217,12 @@ public class AutoHideController implements CommandQueue.Callbacks { return mask; } private boolean hasNavigationBar() { boolean hasNavigationBar() { return mNavigationBar != null; } private boolean hasStatusBar() { @VisibleForTesting boolean hasStatusBar() { return mStatusBar != null; } } packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarFragment.java +2 −1 Original line number Diff line number Diff line Loading @@ -159,7 +159,8 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback private OverviewProxyService mOverviewProxyService; private int mDisplayId; @VisibleForTesting public int mDisplayId; private boolean mIsOnDefaultDisplay; public boolean mHomeBlockedThisTouch; Loading packages/SystemUI/tests/src/com/android/systemui/statusbar/CommandQueueTest.java +91 −9 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ public class CommandQueueTest extends SysuiTestCase { private CommandQueue mCommandQueue; private Callbacks mCallbacks; private static final int SECONDARY_DISPLAY = 1; @Before public void setup() { Loading Loading @@ -68,7 +69,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).removeIcon(eq(slot)); } // TODO(b/117478341): add test case for multi-display @Test public void testDisable() { int state1 = 14; Loading @@ -78,6 +78,15 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).disable(eq(DEFAULT_DISPLAY), eq(state1), eq(state2), eq(true)); } @Test public void testDisableForSecondaryDisplay() { int state1 = 14; int state2 = 42; mCommandQueue.disable(SECONDARY_DISPLAY, state1, state2); waitForIdleSync(); verify(mCallbacks).disable(eq(SECONDARY_DISPLAY), eq(state1), eq(state2), eq(true)); } @Test public void testExpandNotifications() { mCommandQueue.animateExpandNotificationsPanel(); Loading @@ -100,7 +109,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).animateExpandSettingsPanel(eq(panel)); } // TODO(b/117478341): add test case for multi-display @Test public void testSetSystemUiVisibility() { Rect r = new Rect(); Loading @@ -110,7 +118,15 @@ public class CommandQueueTest extends SysuiTestCase { eq(null), eq(r)); } // TODO(b/117478341): add test case for multi-display @Test public void testSetSystemUiVisibilityForSecondaryDisplay() { Rect r = new Rect(); mCommandQueue.setSystemUiVisibility(SECONDARY_DISPLAY, 1, 2, 3, 4, null, r); waitForIdleSync(); verify(mCallbacks).setSystemUiVisibility(eq(SECONDARY_DISPLAY), eq(1), eq(2), eq(3), eq(4), eq(null), eq(r)); } @Test public void testTopAppWindowChanged() { mCommandQueue.topAppWindowChanged(DEFAULT_DISPLAY, true); Loading @@ -118,7 +134,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).topAppWindowChanged(eq(DEFAULT_DISPLAY), eq(true)); } // TODO(b/117478341): add test case for multi-display @Test public void testTopAppWindowChangedForSecondaryDisplay() { mCommandQueue.topAppWindowChanged(SECONDARY_DISPLAY, true); waitForIdleSync(); verify(mCallbacks).topAppWindowChanged(eq(SECONDARY_DISPLAY), eq(true)); } @Test public void testShowImeButton() { mCommandQueue.setImeWindowStatus(DEFAULT_DISPLAY, null, 1, 2, true); Loading @@ -127,6 +149,14 @@ public class CommandQueueTest extends SysuiTestCase { eq(DEFAULT_DISPLAY), eq(null), eq(1), eq(2), eq(true)); } @Test public void testShowImeButtonForSecondaryDisplay() { mCommandQueue.setImeWindowStatus(SECONDARY_DISPLAY, null, 1, 2, true); waitForIdleSync(); verify(mCallbacks).setImeWindowStatus( eq(SECONDARY_DISPLAY), eq(null), eq(1), eq(2), eq(true)); } @Test public void testShowRecentApps() { mCommandQueue.showRecentApps(true); Loading Loading @@ -176,7 +206,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).toggleKeyboardShortcutsMenu(eq(1)); } // TODO(b/117478341): add test case for multi-display @Test public void testSetWindowState() { mCommandQueue.setWindowState(DEFAULT_DISPLAY, 1, 2); Loading @@ -184,6 +213,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).setWindowState(eq(DEFAULT_DISPLAY), eq(1), eq(2)); } @Test public void testSetWindowStateForSecondaryDisplay() { mCommandQueue.setWindowState(SECONDARY_DISPLAY, 1, 2); waitForIdleSync(); verify(mCallbacks).setWindowState(eq(SECONDARY_DISPLAY), eq(1), eq(2)); } @Test public void testScreenPinRequest() { mCommandQueue.showScreenPinningRequest(1); Loading @@ -191,7 +227,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).showScreenPinningRequest(eq(1)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionPending() { mCommandQueue.appTransitionPending(DEFAULT_DISPLAY); Loading @@ -199,7 +234,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).appTransitionPending(eq(DEFAULT_DISPLAY), eq(false)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionPendingForSecondaryDisplay() { mCommandQueue.appTransitionPending(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).appTransitionPending(eq(SECONDARY_DISPLAY), eq(false)); } @Test public void testAppTransitionCancelled() { mCommandQueue.appTransitionCancelled(DEFAULT_DISPLAY); Loading @@ -207,7 +248,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).appTransitionCancelled(eq(DEFAULT_DISPLAY)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionCancelledForSecondaryDisplay() { mCommandQueue.appTransitionCancelled(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).appTransitionCancelled(eq(SECONDARY_DISPLAY)); } @Test public void testAppTransitionStarting() { mCommandQueue.appTransitionStarting(DEFAULT_DISPLAY, 1, 2); Loading @@ -216,7 +263,14 @@ public class CommandQueueTest extends SysuiTestCase { eq(DEFAULT_DISPLAY), eq(1L), eq(2L), eq(false)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionStartingForSecondaryDisplay() { mCommandQueue.appTransitionStarting(SECONDARY_DISPLAY, 1, 2); waitForIdleSync(); verify(mCallbacks).appTransitionStarting( eq(SECONDARY_DISPLAY), eq(1L), eq(2L), eq(false)); } @Test public void testAppTransitionFinished() { mCommandQueue.appTransitionFinished(DEFAULT_DISPLAY); Loading @@ -224,6 +278,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).appTransitionFinished(eq(DEFAULT_DISPLAY)); } @Test public void testAppTransitionFinishedForSecondaryDisplay() { mCommandQueue.appTransitionFinished(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).appTransitionFinished(eq(SECONDARY_DISPLAY)); } @Test public void testAssistDisclosure() { mCommandQueue.showAssistDisclosure(); Loading Loading @@ -290,4 +351,25 @@ public class CommandQueueTest extends SysuiTestCase { waitForIdleSync(); verify(mCallbacks).handleSystemKey(eq(1)); } @Test public void testOnDisplayReady() { mCommandQueue.onDisplayReady(DEFAULT_DISPLAY); waitForIdleSync(); verify(mCallbacks).onDisplayReady(eq(DEFAULT_DISPLAY)); } @Test public void testOnDisplayReadyForSecondaryDisplay() { mCommandQueue.onDisplayReady(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).onDisplayReady(eq(SECONDARY_DISPLAY)); } @Test public void testOnDisplayRemoved() { mCommandQueue.onDisplayRemoved(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).onDisplayRemoved(eq(SECONDARY_DISPLAY)); } } Loading
packages/SystemUI/src/com/android/systemui/statusbar/CommandQueue.java +4 −2 Original line number Diff line number Diff line Loading @@ -596,7 +596,8 @@ public class CommandQueue extends IStatusBar.Stub implements CallbackController< @Override public void appTransitionCancelled(int displayId) { synchronized (mLock) { mHandler.obtainMessage(MSG_APP_TRANSITION_CANCELLED, displayId).sendToTarget(); mHandler.obtainMessage(MSG_APP_TRANSITION_CANCELLED, displayId, 0 /* unused */) .sendToTarget(); } } Loading Loading @@ -624,7 +625,8 @@ public class CommandQueue extends IStatusBar.Stub implements CallbackController< @Override public void appTransitionFinished(int displayId) { synchronized (mLock) { mHandler.obtainMessage(MSG_APP_TRANSITION_FINISHED, displayId).sendToTarget(); mHandler.obtainMessage(MSG_APP_TRANSITION_FINISHED, displayId, 0 /* unused */) .sendToTarget(); } } Loading
packages/SystemUI/src/com/android/systemui/statusbar/NavigationBarController.java +5 −2 Original line number Diff line number Diff line Loading @@ -32,6 +32,7 @@ import android.view.IWindowManager; import android.view.View; import android.view.WindowManagerGlobal; import com.android.internal.annotations.VisibleForTesting; import com.android.systemui.Dependency; import com.android.systemui.plugins.DarkIconDispatcher; import com.android.systemui.statusbar.CommandQueue.Callbacks; Loading @@ -58,7 +59,8 @@ public class NavigationBarController implements Callbacks { private final DisplayManager mDisplayManager; /** A displayId - nav bar maps. */ private SparseArray<NavigationBarFragment> mNavigationBars = new SparseArray<>(); @VisibleForTesting SparseArray<NavigationBarFragment> mNavigationBars = new SparseArray<>(); @Inject public NavigationBarController(Context context, @Named(MAIN_HANDLER_NAME) Handler handler) { Loading Loading @@ -101,7 +103,8 @@ public class NavigationBarController implements Callbacks { * * @param display the display to add navigation bar on. */ private void createNavigationBar(Display display) { @VisibleForTesting void createNavigationBar(Display display) { if (display == null) { return; } Loading
packages/SystemUI/src/com/android/systemui/statusbar/phone/AutoHideController.java +10 −5 Original line number Diff line number Diff line Loading @@ -28,6 +28,7 @@ import android.view.IWindowManager; import android.view.MotionEvent; import android.view.View; import com.android.internal.annotations.VisibleForTesting; import com.android.systemui.Dependency; import com.android.systemui.SysUiServiceProvider; import com.android.systemui.statusbar.CommandQueue; Loading @@ -48,8 +49,10 @@ public class AutoHideController implements CommandQueue.Callbacks { private StatusBar mStatusBar; private NavigationBarFragment mNavigationBar; private int mDisplayId; private int mSystemUiVisibility; @VisibleForTesting int mDisplayId; @VisibleForTesting int mSystemUiVisibility; // last value sent to window manager private int mLastDispatchedSystemUiVisibility = ~View.SYSTEM_UI_FLAG_VISIBLE; Loading Loading @@ -123,7 +126,8 @@ public class AutoHideController implements CommandQueue.Callbacks { } } private void notifySystemUiVisibilityChanged(int vis) { @VisibleForTesting void notifySystemUiVisibilityChanged(int vis) { try { if (mLastDispatchedSystemUiVisibility != vis) { mWindowManagerService.statusBarVisibilityChanged(mDisplayId, vis); Loading Loading @@ -213,11 +217,12 @@ public class AutoHideController implements CommandQueue.Callbacks { return mask; } private boolean hasNavigationBar() { boolean hasNavigationBar() { return mNavigationBar != null; } private boolean hasStatusBar() { @VisibleForTesting boolean hasStatusBar() { return mStatusBar != null; } }
packages/SystemUI/src/com/android/systemui/statusbar/phone/NavigationBarFragment.java +2 −1 Original line number Diff line number Diff line Loading @@ -159,7 +159,8 @@ public class NavigationBarFragment extends LifecycleFragment implements Callback private OverviewProxyService mOverviewProxyService; private int mDisplayId; @VisibleForTesting public int mDisplayId; private boolean mIsOnDefaultDisplay; public boolean mHomeBlockedThisTouch; Loading
packages/SystemUI/tests/src/com/android/systemui/statusbar/CommandQueueTest.java +91 −9 Original line number Diff line number Diff line Loading @@ -41,6 +41,7 @@ public class CommandQueueTest extends SysuiTestCase { private CommandQueue mCommandQueue; private Callbacks mCallbacks; private static final int SECONDARY_DISPLAY = 1; @Before public void setup() { Loading Loading @@ -68,7 +69,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).removeIcon(eq(slot)); } // TODO(b/117478341): add test case for multi-display @Test public void testDisable() { int state1 = 14; Loading @@ -78,6 +78,15 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).disable(eq(DEFAULT_DISPLAY), eq(state1), eq(state2), eq(true)); } @Test public void testDisableForSecondaryDisplay() { int state1 = 14; int state2 = 42; mCommandQueue.disable(SECONDARY_DISPLAY, state1, state2); waitForIdleSync(); verify(mCallbacks).disable(eq(SECONDARY_DISPLAY), eq(state1), eq(state2), eq(true)); } @Test public void testExpandNotifications() { mCommandQueue.animateExpandNotificationsPanel(); Loading @@ -100,7 +109,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).animateExpandSettingsPanel(eq(panel)); } // TODO(b/117478341): add test case for multi-display @Test public void testSetSystemUiVisibility() { Rect r = new Rect(); Loading @@ -110,7 +118,15 @@ public class CommandQueueTest extends SysuiTestCase { eq(null), eq(r)); } // TODO(b/117478341): add test case for multi-display @Test public void testSetSystemUiVisibilityForSecondaryDisplay() { Rect r = new Rect(); mCommandQueue.setSystemUiVisibility(SECONDARY_DISPLAY, 1, 2, 3, 4, null, r); waitForIdleSync(); verify(mCallbacks).setSystemUiVisibility(eq(SECONDARY_DISPLAY), eq(1), eq(2), eq(3), eq(4), eq(null), eq(r)); } @Test public void testTopAppWindowChanged() { mCommandQueue.topAppWindowChanged(DEFAULT_DISPLAY, true); Loading @@ -118,7 +134,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).topAppWindowChanged(eq(DEFAULT_DISPLAY), eq(true)); } // TODO(b/117478341): add test case for multi-display @Test public void testTopAppWindowChangedForSecondaryDisplay() { mCommandQueue.topAppWindowChanged(SECONDARY_DISPLAY, true); waitForIdleSync(); verify(mCallbacks).topAppWindowChanged(eq(SECONDARY_DISPLAY), eq(true)); } @Test public void testShowImeButton() { mCommandQueue.setImeWindowStatus(DEFAULT_DISPLAY, null, 1, 2, true); Loading @@ -127,6 +149,14 @@ public class CommandQueueTest extends SysuiTestCase { eq(DEFAULT_DISPLAY), eq(null), eq(1), eq(2), eq(true)); } @Test public void testShowImeButtonForSecondaryDisplay() { mCommandQueue.setImeWindowStatus(SECONDARY_DISPLAY, null, 1, 2, true); waitForIdleSync(); verify(mCallbacks).setImeWindowStatus( eq(SECONDARY_DISPLAY), eq(null), eq(1), eq(2), eq(true)); } @Test public void testShowRecentApps() { mCommandQueue.showRecentApps(true); Loading Loading @@ -176,7 +206,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).toggleKeyboardShortcutsMenu(eq(1)); } // TODO(b/117478341): add test case for multi-display @Test public void testSetWindowState() { mCommandQueue.setWindowState(DEFAULT_DISPLAY, 1, 2); Loading @@ -184,6 +213,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).setWindowState(eq(DEFAULT_DISPLAY), eq(1), eq(2)); } @Test public void testSetWindowStateForSecondaryDisplay() { mCommandQueue.setWindowState(SECONDARY_DISPLAY, 1, 2); waitForIdleSync(); verify(mCallbacks).setWindowState(eq(SECONDARY_DISPLAY), eq(1), eq(2)); } @Test public void testScreenPinRequest() { mCommandQueue.showScreenPinningRequest(1); Loading @@ -191,7 +227,6 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).showScreenPinningRequest(eq(1)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionPending() { mCommandQueue.appTransitionPending(DEFAULT_DISPLAY); Loading @@ -199,7 +234,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).appTransitionPending(eq(DEFAULT_DISPLAY), eq(false)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionPendingForSecondaryDisplay() { mCommandQueue.appTransitionPending(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).appTransitionPending(eq(SECONDARY_DISPLAY), eq(false)); } @Test public void testAppTransitionCancelled() { mCommandQueue.appTransitionCancelled(DEFAULT_DISPLAY); Loading @@ -207,7 +248,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).appTransitionCancelled(eq(DEFAULT_DISPLAY)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionCancelledForSecondaryDisplay() { mCommandQueue.appTransitionCancelled(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).appTransitionCancelled(eq(SECONDARY_DISPLAY)); } @Test public void testAppTransitionStarting() { mCommandQueue.appTransitionStarting(DEFAULT_DISPLAY, 1, 2); Loading @@ -216,7 +263,14 @@ public class CommandQueueTest extends SysuiTestCase { eq(DEFAULT_DISPLAY), eq(1L), eq(2L), eq(false)); } // TODO(b/117478341): add test case for multi-display @Test public void testAppTransitionStartingForSecondaryDisplay() { mCommandQueue.appTransitionStarting(SECONDARY_DISPLAY, 1, 2); waitForIdleSync(); verify(mCallbacks).appTransitionStarting( eq(SECONDARY_DISPLAY), eq(1L), eq(2L), eq(false)); } @Test public void testAppTransitionFinished() { mCommandQueue.appTransitionFinished(DEFAULT_DISPLAY); Loading @@ -224,6 +278,13 @@ public class CommandQueueTest extends SysuiTestCase { verify(mCallbacks).appTransitionFinished(eq(DEFAULT_DISPLAY)); } @Test public void testAppTransitionFinishedForSecondaryDisplay() { mCommandQueue.appTransitionFinished(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).appTransitionFinished(eq(SECONDARY_DISPLAY)); } @Test public void testAssistDisclosure() { mCommandQueue.showAssistDisclosure(); Loading Loading @@ -290,4 +351,25 @@ public class CommandQueueTest extends SysuiTestCase { waitForIdleSync(); verify(mCallbacks).handleSystemKey(eq(1)); } @Test public void testOnDisplayReady() { mCommandQueue.onDisplayReady(DEFAULT_DISPLAY); waitForIdleSync(); verify(mCallbacks).onDisplayReady(eq(DEFAULT_DISPLAY)); } @Test public void testOnDisplayReadyForSecondaryDisplay() { mCommandQueue.onDisplayReady(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).onDisplayReady(eq(SECONDARY_DISPLAY)); } @Test public void testOnDisplayRemoved() { mCommandQueue.onDisplayRemoved(SECONDARY_DISPLAY); waitForIdleSync(); verify(mCallbacks).onDisplayRemoved(eq(SECONDARY_DISPLAY)); } }