Loading packages/SystemUI/src/com/android/systemui/navigationbar/NavBarHelper.java +10 −2 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ import android.view.accessibility.AccessibilityManager; import androidx.annotation.NonNull; import com.android.keyguard.KeyguardViewController; import com.android.systemui.Dumpable; import com.android.systemui.accessibility.AccessibilityButtonModeObserver; import com.android.systemui.accessibility.AccessibilityButtonTargetsObserver; Loading Loading @@ -89,6 +90,7 @@ public final class NavBarHelper implements private final AccessibilityManager mAccessibilityManager; private final Lazy<AssistManager> mAssistManagerLazy; private final Lazy<Optional<CentralSurfaces>> mCentralSurfacesOptionalLazy; private final KeyguardViewController mKeyguardViewController; private final UserTracker mUserTracker; private final SystemActions mSystemActions; private final AccessibilityButtonModeObserver mAccessibilityButtonModeObserver; Loading Loading @@ -123,6 +125,7 @@ public final class NavBarHelper implements OverviewProxyService overviewProxyService, Lazy<AssistManager> assistManagerLazy, Lazy<Optional<CentralSurfaces>> centralSurfacesOptionalLazy, KeyguardViewController keyguardViewController, NavigationModeController navigationModeController, UserTracker userTracker, DumpManager dumpManager) { Loading @@ -131,6 +134,7 @@ public final class NavBarHelper implements mAccessibilityManager = accessibilityManager; mAssistManagerLazy = assistManagerLazy; mCentralSurfacesOptionalLazy = centralSurfacesOptionalLazy; mKeyguardViewController = keyguardViewController; mUserTracker = userTracker; mSystemActions = systemActions; accessibilityManager.addAccessibilityServicesStateChangeListener(this); Loading Loading @@ -317,8 +321,12 @@ public final class NavBarHelper implements * {@link InputMethodService} and the keyguard states. */ public boolean isImeShown(int vis) { View shadeWindowView = mCentralSurfacesOptionalLazy.get().get().getNotificationShadeWindowView(); boolean isKeyguardShowing = mCentralSurfacesOptionalLazy.get().get().isKeyguardShowing(); View shadeWindowView = null; if (mCentralSurfacesOptionalLazy.get().isPresent()) { shadeWindowView = mCentralSurfacesOptionalLazy.get().get().getNotificationShadeWindowView(); } boolean isKeyguardShowing = mKeyguardViewController.isShowing(); boolean imeVisibleOnShade = shadeWindowView != null && shadeWindowView.isAttachedToWindow() && shadeWindowView.getRootWindowInsets().isVisible(WindowInsets.Type.ime()); return imeVisibleOnShade Loading packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavBarHelperTest.java +2 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import android.view.accessibility.AccessibilityManager; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; import com.android.keyguard.KeyguardViewController; import com.android.systemui.SysuiTestCase; import com.android.systemui.accessibility.AccessibilityButtonModeObserver; import com.android.systemui.accessibility.AccessibilityButtonTargetsObserver; Loading Loading @@ -112,7 +113,7 @@ public class NavBarHelperTest extends SysuiTestCase { mNavBarHelper = new NavBarHelper(mContext, mAccessibilityManager, mAccessibilityButtonModeObserver, mAccessibilityButtonTargetObserver, mSystemActions, mOverviewProxyService, mAssistManagerLazy, () -> Optional.of(mock(CentralSurfaces.class)), () -> Optional.of(mock(CentralSurfaces.class)), mock(KeyguardViewController.class), mNavigationModeController, mUserTracker, mDumpManager); } Loading packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavigationBarTest.java +6 −3 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ import androidx.test.filters.SmallTest; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.UiEventLogger; import com.android.keyguard.KeyguardViewController; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestableContext; import com.android.systemui.accessibility.AccessibilityButtonModeObserver; Loading Loading @@ -193,6 +194,8 @@ public class NavigationBarTest extends SysuiTestCase { @Mock private CentralSurfaces mCentralSurfaces; @Mock private KeyguardViewController mKeyguardViewController; @Mock private UserContextProvider mUserContextProvider; @Mock private Resources mResources; Loading Loading @@ -237,8 +240,8 @@ public class NavigationBarTest extends SysuiTestCase { mock(AccessibilityButtonTargetsObserver.class), mSystemActions, mOverviewProxyService, () -> mock(AssistManager.class), () -> Optional.of(mCentralSurfaces), mock(NavigationModeController.class), mock(UserTracker.class), mock(DumpManager.class))); mKeyguardViewController, mock(NavigationModeController.class), mock(UserTracker.class), mock(DumpManager.class))); mNavigationBar = createNavBar(mContext); mExternalDisplayNavigationBar = createNavBar(mSysuiTestableContextExternal); }); Loading Loading @@ -377,7 +380,7 @@ public class NavigationBarTest extends SysuiTestCase { // Verify navbar didn't alter and showing back icon when the keyguard is showing without // requesting IME insets visible. doReturn(true).when(mCentralSurfaces).isKeyguardShowing(); doReturn(true).when(mKeyguardViewController).isShowing(); mNavigationBar.setImeWindowStatus(DEFAULT_DISPLAY, null, IME_VISIBLE, BACK_DISPOSITION_DEFAULT, true); assertFalse((mNavigationBar.getNavigationIconHints() & NAVIGATION_HINT_BACK_ALT) != 0); Loading Loading
packages/SystemUI/src/com/android/systemui/navigationbar/NavBarHelper.java +10 −2 Original line number Diff line number Diff line Loading @@ -48,6 +48,7 @@ import android.view.accessibility.AccessibilityManager; import androidx.annotation.NonNull; import com.android.keyguard.KeyguardViewController; import com.android.systemui.Dumpable; import com.android.systemui.accessibility.AccessibilityButtonModeObserver; import com.android.systemui.accessibility.AccessibilityButtonTargetsObserver; Loading Loading @@ -89,6 +90,7 @@ public final class NavBarHelper implements private final AccessibilityManager mAccessibilityManager; private final Lazy<AssistManager> mAssistManagerLazy; private final Lazy<Optional<CentralSurfaces>> mCentralSurfacesOptionalLazy; private final KeyguardViewController mKeyguardViewController; private final UserTracker mUserTracker; private final SystemActions mSystemActions; private final AccessibilityButtonModeObserver mAccessibilityButtonModeObserver; Loading Loading @@ -123,6 +125,7 @@ public final class NavBarHelper implements OverviewProxyService overviewProxyService, Lazy<AssistManager> assistManagerLazy, Lazy<Optional<CentralSurfaces>> centralSurfacesOptionalLazy, KeyguardViewController keyguardViewController, NavigationModeController navigationModeController, UserTracker userTracker, DumpManager dumpManager) { Loading @@ -131,6 +134,7 @@ public final class NavBarHelper implements mAccessibilityManager = accessibilityManager; mAssistManagerLazy = assistManagerLazy; mCentralSurfacesOptionalLazy = centralSurfacesOptionalLazy; mKeyguardViewController = keyguardViewController; mUserTracker = userTracker; mSystemActions = systemActions; accessibilityManager.addAccessibilityServicesStateChangeListener(this); Loading Loading @@ -317,8 +321,12 @@ public final class NavBarHelper implements * {@link InputMethodService} and the keyguard states. */ public boolean isImeShown(int vis) { View shadeWindowView = mCentralSurfacesOptionalLazy.get().get().getNotificationShadeWindowView(); boolean isKeyguardShowing = mCentralSurfacesOptionalLazy.get().get().isKeyguardShowing(); View shadeWindowView = null; if (mCentralSurfacesOptionalLazy.get().isPresent()) { shadeWindowView = mCentralSurfacesOptionalLazy.get().get().getNotificationShadeWindowView(); } boolean isKeyguardShowing = mKeyguardViewController.isShowing(); boolean imeVisibleOnShade = shadeWindowView != null && shadeWindowView.isAttachedToWindow() && shadeWindowView.getRootWindowInsets().isVisible(WindowInsets.Type.ime()); return imeVisibleOnShade Loading
packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavBarHelperTest.java +2 −1 Original line number Diff line number Diff line Loading @@ -39,6 +39,7 @@ import android.view.accessibility.AccessibilityManager; import androidx.test.filters.SmallTest; import androidx.test.runner.AndroidJUnit4; import com.android.keyguard.KeyguardViewController; import com.android.systemui.SysuiTestCase; import com.android.systemui.accessibility.AccessibilityButtonModeObserver; import com.android.systemui.accessibility.AccessibilityButtonTargetsObserver; Loading Loading @@ -112,7 +113,7 @@ public class NavBarHelperTest extends SysuiTestCase { mNavBarHelper = new NavBarHelper(mContext, mAccessibilityManager, mAccessibilityButtonModeObserver, mAccessibilityButtonTargetObserver, mSystemActions, mOverviewProxyService, mAssistManagerLazy, () -> Optional.of(mock(CentralSurfaces.class)), () -> Optional.of(mock(CentralSurfaces.class)), mock(KeyguardViewController.class), mNavigationModeController, mUserTracker, mDumpManager); } Loading
packages/SystemUI/tests/src/com/android/systemui/navigationbar/NavigationBarTest.java +6 −3 Original line number Diff line number Diff line Loading @@ -72,6 +72,7 @@ import androidx.test.filters.SmallTest; import com.android.internal.logging.MetricsLogger; import com.android.internal.logging.UiEventLogger; import com.android.keyguard.KeyguardViewController; import com.android.systemui.SysuiTestCase; import com.android.systemui.SysuiTestableContext; import com.android.systemui.accessibility.AccessibilityButtonModeObserver; Loading Loading @@ -193,6 +194,8 @@ public class NavigationBarTest extends SysuiTestCase { @Mock private CentralSurfaces mCentralSurfaces; @Mock private KeyguardViewController mKeyguardViewController; @Mock private UserContextProvider mUserContextProvider; @Mock private Resources mResources; Loading Loading @@ -237,8 +240,8 @@ public class NavigationBarTest extends SysuiTestCase { mock(AccessibilityButtonTargetsObserver.class), mSystemActions, mOverviewProxyService, () -> mock(AssistManager.class), () -> Optional.of(mCentralSurfaces), mock(NavigationModeController.class), mock(UserTracker.class), mock(DumpManager.class))); mKeyguardViewController, mock(NavigationModeController.class), mock(UserTracker.class), mock(DumpManager.class))); mNavigationBar = createNavBar(mContext); mExternalDisplayNavigationBar = createNavBar(mSysuiTestableContextExternal); }); Loading Loading @@ -377,7 +380,7 @@ public class NavigationBarTest extends SysuiTestCase { // Verify navbar didn't alter and showing back icon when the keyguard is showing without // requesting IME insets visible. doReturn(true).when(mCentralSurfaces).isKeyguardShowing(); doReturn(true).when(mKeyguardViewController).isShowing(); mNavigationBar.setImeWindowStatus(DEFAULT_DISPLAY, null, IME_VISIBLE, BACK_DISPOSITION_DEFAULT, true); assertFalse((mNavigationBar.getNavigationIconHints() & NAVIGATION_HINT_BACK_ALT) != 0); Loading