Loading packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialogLite.java +9 −1 Original line number Diff line number Diff line Loading @@ -624,7 +624,9 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene addIfShouldShowAction(tempActions, new LogoutAction()); } } else if (GLOBAL_ACTION_KEY_EMERGENCY.equals(actionKey)) { if (shouldDisplayEmergency()) { addIfShouldShowAction(tempActions, new EmergencyDialerAction()); } } else { Log.e(TAG, "Invalid global action key " + actionKey); } Loading Loading @@ -703,6 +705,12 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene || state == SOME_AUTH_REQUIRED_AFTER_USER_REQUEST); } @VisibleForTesting boolean shouldDisplayEmergency() { // Emergency calling requires a telephony radio. return mHasTelephony; } @VisibleForTesting boolean shouldDisplayBugReport(UserInfo currentUser) { return mGlobalSettings.getInt(Settings.Global.BUGREPORT_IN_POWER_MENU, 0) != 0 Loading packages/SystemUI/tests/src/com/android/systemui/globalactions/GlobalActionsDialogLiteTest.java +29 −0 Original line number Diff line number Diff line Loading @@ -341,6 +341,7 @@ public class GlobalActionsDialogLiteTest extends SysuiTestCase { public void testCreateActionItems_lockdownEnabled_doesShowLockdown() { mGlobalActionsDialogLite = spy(mGlobalActionsDialogLite); doReturn(4).when(mGlobalActionsDialogLite).getMaxShownPowerItems(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayEmergency(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayLockdown(any()); doReturn(true).when(mGlobalActionsDialogLite).shouldShowAction(any()); String[] actions = { Loading @@ -365,8 +366,10 @@ public class GlobalActionsDialogLiteTest extends SysuiTestCase { public void testCreateActionItems_lockdownDisabled_doesNotShowLockdown() { mGlobalActionsDialogLite = spy(mGlobalActionsDialogLite); doReturn(4).when(mGlobalActionsDialogLite).getMaxShownPowerItems(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayEmergency(); // make sure lockdown action will NOT be shown doReturn(false).when(mGlobalActionsDialogLite).shouldDisplayLockdown(any()); doReturn(true).when(mGlobalActionsDialogLite).shouldShowAction(any()); String[] actions = { GlobalActionsDialogLite.GLOBAL_ACTION_KEY_EMERGENCY, // lockdown action not allowed Loading @@ -385,6 +388,32 @@ public class GlobalActionsDialogLiteTest extends SysuiTestCase { assertThat(mGlobalActionsDialogLite.mPowerItems).isEmpty(); } @Test public void testCreateActionItems_emergencyDisabled_doesNotShowEmergency() { mGlobalActionsDialogLite = spy(mGlobalActionsDialogLite); doReturn(4).when(mGlobalActionsDialogLite).getMaxShownPowerItems(); // make sure emergency action will NOT be shown doReturn(false).when(mGlobalActionsDialogLite).shouldDisplayEmergency(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayLockdown(any()); doReturn(true).when(mGlobalActionsDialogLite).shouldShowAction(any()); String[] actions = { // emergency action not allowed GlobalActionsDialogLite.GLOBAL_ACTION_KEY_EMERGENCY, GlobalActionsDialogLite.GLOBAL_ACTION_KEY_LOCKDOWN, GlobalActionsDialogLite.GLOBAL_ACTION_KEY_POWER, GlobalActionsDialogLite.GLOBAL_ACTION_KEY_RESTART, }; doReturn(actions).when(mGlobalActionsDialogLite).getDefaultActions(); mGlobalActionsDialogLite.createActionItems(); assertItemsOfType(mGlobalActionsDialogLite.mItems, GlobalActionsDialogLite.LockDownAction.class, GlobalActionsDialogLite.ShutDownAction.class, GlobalActionsDialogLite.RestartAction.class); assertThat(mGlobalActionsDialogLite.mOverflowItems).isEmpty(); assertThat(mGlobalActionsDialogLite.mPowerItems).isEmpty(); } @Test public void testShouldLogLockdownPress() { GlobalActionsDialogLite.LockDownAction lockDownAction = Loading Loading
packages/SystemUI/src/com/android/systemui/globalactions/GlobalActionsDialogLite.java +9 −1 Original line number Diff line number Diff line Loading @@ -624,7 +624,9 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene addIfShouldShowAction(tempActions, new LogoutAction()); } } else if (GLOBAL_ACTION_KEY_EMERGENCY.equals(actionKey)) { if (shouldDisplayEmergency()) { addIfShouldShowAction(tempActions, new EmergencyDialerAction()); } } else { Log.e(TAG, "Invalid global action key " + actionKey); } Loading Loading @@ -703,6 +705,12 @@ public class GlobalActionsDialogLite implements DialogInterface.OnDismissListene || state == SOME_AUTH_REQUIRED_AFTER_USER_REQUEST); } @VisibleForTesting boolean shouldDisplayEmergency() { // Emergency calling requires a telephony radio. return mHasTelephony; } @VisibleForTesting boolean shouldDisplayBugReport(UserInfo currentUser) { return mGlobalSettings.getInt(Settings.Global.BUGREPORT_IN_POWER_MENU, 0) != 0 Loading
packages/SystemUI/tests/src/com/android/systemui/globalactions/GlobalActionsDialogLiteTest.java +29 −0 Original line number Diff line number Diff line Loading @@ -341,6 +341,7 @@ public class GlobalActionsDialogLiteTest extends SysuiTestCase { public void testCreateActionItems_lockdownEnabled_doesShowLockdown() { mGlobalActionsDialogLite = spy(mGlobalActionsDialogLite); doReturn(4).when(mGlobalActionsDialogLite).getMaxShownPowerItems(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayEmergency(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayLockdown(any()); doReturn(true).when(mGlobalActionsDialogLite).shouldShowAction(any()); String[] actions = { Loading @@ -365,8 +366,10 @@ public class GlobalActionsDialogLiteTest extends SysuiTestCase { public void testCreateActionItems_lockdownDisabled_doesNotShowLockdown() { mGlobalActionsDialogLite = spy(mGlobalActionsDialogLite); doReturn(4).when(mGlobalActionsDialogLite).getMaxShownPowerItems(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayEmergency(); // make sure lockdown action will NOT be shown doReturn(false).when(mGlobalActionsDialogLite).shouldDisplayLockdown(any()); doReturn(true).when(mGlobalActionsDialogLite).shouldShowAction(any()); String[] actions = { GlobalActionsDialogLite.GLOBAL_ACTION_KEY_EMERGENCY, // lockdown action not allowed Loading @@ -385,6 +388,32 @@ public class GlobalActionsDialogLiteTest extends SysuiTestCase { assertThat(mGlobalActionsDialogLite.mPowerItems).isEmpty(); } @Test public void testCreateActionItems_emergencyDisabled_doesNotShowEmergency() { mGlobalActionsDialogLite = spy(mGlobalActionsDialogLite); doReturn(4).when(mGlobalActionsDialogLite).getMaxShownPowerItems(); // make sure emergency action will NOT be shown doReturn(false).when(mGlobalActionsDialogLite).shouldDisplayEmergency(); doReturn(true).when(mGlobalActionsDialogLite).shouldDisplayLockdown(any()); doReturn(true).when(mGlobalActionsDialogLite).shouldShowAction(any()); String[] actions = { // emergency action not allowed GlobalActionsDialogLite.GLOBAL_ACTION_KEY_EMERGENCY, GlobalActionsDialogLite.GLOBAL_ACTION_KEY_LOCKDOWN, GlobalActionsDialogLite.GLOBAL_ACTION_KEY_POWER, GlobalActionsDialogLite.GLOBAL_ACTION_KEY_RESTART, }; doReturn(actions).when(mGlobalActionsDialogLite).getDefaultActions(); mGlobalActionsDialogLite.createActionItems(); assertItemsOfType(mGlobalActionsDialogLite.mItems, GlobalActionsDialogLite.LockDownAction.class, GlobalActionsDialogLite.ShutDownAction.class, GlobalActionsDialogLite.RestartAction.class); assertThat(mGlobalActionsDialogLite.mOverflowItems).isEmpty(); assertThat(mGlobalActionsDialogLite.mPowerItems).isEmpty(); } @Test public void testShouldLogLockdownPress() { GlobalActionsDialogLite.LockDownAction lockDownAction = Loading