Using cmd overlay enable-exclusive to switch nav modes

Bug: 151598694
Change-Id: I7df6b7538f7233163868065b866b610c45dc7b46
(cherry picked from commit ccf083dc7d)
This commit is contained in:
vadimt 2020-03-16 12:43:10 -07:00 committed by Vadim Tryshev
parent f7871fdb54
commit bd0955dfd7
1 changed files with 3 additions and 14 deletions

View File

@ -167,12 +167,9 @@ public class NavigationModeSwitchRule implements TestRule {
return false;
}
setOverlayPackageEnabled(NAV_BAR_MODE_3BUTTON_OVERLAY,
overlayPackage == NAV_BAR_MODE_3BUTTON_OVERLAY);
setOverlayPackageEnabled(NAV_BAR_MODE_2BUTTON_OVERLAY,
overlayPackage == NAV_BAR_MODE_2BUTTON_OVERLAY);
setOverlayPackageEnabled(NAV_BAR_MODE_GESTURAL_OVERLAY,
overlayPackage == NAV_BAR_MODE_GESTURAL_OVERLAY);
Log.d(TAG, "setActiveOverlay: " + overlayPackage + "...");
UiDevice.getInstance(getInstrumentation()).executeShellCommand(
"cmd overlay enable-exclusive " + overlayPackage);
if (currentSysUiNavigationMode() != expectedMode) {
final CountDownLatch latch = new CountDownLatch(1);
@ -204,14 +201,6 @@ public class NavigationModeSwitchRule implements TestRule {
return true;
}
private static void setOverlayPackageEnabled(String overlayPackage, boolean enable)
throws Exception {
Log.d(TAG, "setOverlayPackageEnabled: " + overlayPackage + " " + enable);
final String action = enable ? "enable" : "disable";
UiDevice.getInstance(getInstrumentation()).executeShellCommand(
"cmd overlay " + action + " " + overlayPackage);
}
private static boolean packageExists(String packageName) {
try {
PackageManager pm = getInstrumentation().getContext().getPackageManager();