Loading packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBar.java +4 −11 Original line number Diff line number Diff line Loading @@ -164,6 +164,8 @@ import com.android.systemui.util.ViewController; import com.android.wm.shell.back.BackAnimation; import com.android.wm.shell.pip.Pip; import dagger.Lazy; import java.io.PrintWriter; import java.util.Locale; import java.util.Map; Loading @@ -173,8 +175,6 @@ import java.util.function.Consumer; import javax.inject.Inject; import dagger.Lazy; /** * Contains logic for a navigation bar view. */ Loading Loading @@ -251,12 +251,6 @@ public class NavigationBar extends ViewController<NavigationBarView> implements private boolean mTransientShown; private boolean mTransientShownFromGestureOnSystemBar; /** * This is to indicate whether the navigation bar button is forced visible. This is true * when the setup wizard is on display. When that happens, the window frame should be provided * as insets size directly. */ private boolean mIsButtonForceVisible; private int mNavBarMode = NAV_BAR_MODE_3BUTTON; private LightBarController mLightBarController; private final LightBarController mMainLightBarController; Loading Loading @@ -670,8 +664,7 @@ public class NavigationBar extends ViewController<NavigationBarView> implements mView.setTouchHandler(mTouchHandler); setNavBarMode(mNavBarMode); mEdgeBackGestureHandler.setStateChangeCallback(mView::updateStates); mEdgeBackGestureHandler.setButtonForceVisibleChangeCallback((forceVisible) -> { mIsButtonForceVisible = forceVisible; mEdgeBackGestureHandler.setButtonForcedVisibleChangeCallback((forceVisible) -> { repositionNavigationBar(mCurrentRotation); }); mNavigationBarTransitions.addListener(this::onBarTransition); Loading Loading @@ -1710,7 +1703,7 @@ public class NavigationBar extends ViewController<NavigationBarView> implements private InsetsFrameProvider[] getInsetsFrameProvider(int insetsHeight, Context userContext) { final InsetsFrameProvider navBarProvider; if (insetsHeight != -1 && !mIsButtonForceVisible) { if (insetsHeight != -1 && !mEdgeBackGestureHandler.isButtonForcedVisible()) { navBarProvider = new InsetsFrameProvider( ITYPE_NAVIGATION_BAR, Insets.of(0, 0, 0, insetsHeight)); // Use window frame for IME. Loading packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java +14 −9 Original line number Diff line number Diff line Loading @@ -178,7 +178,7 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack private final OverviewProxyService mOverviewProxyService; private final SysUiState mSysUiState; private Runnable mStateChangeCallback; private Consumer<Boolean> mButtonForceVisibleCallback; private Consumer<Boolean> mButtonForcedVisibleCallback; private final PluginManager mPluginManager; private final ProtoTracer mProtoTracer; Loading Loading @@ -246,7 +246,7 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack private boolean mGestureBlockingActivityRunning; private boolean mIsNewBackAffordanceEnabled; private boolean mIsTrackpadGestureBackEnabled; private boolean mIsButtonForceVisible; private boolean mIsButtonForcedVisible; private InputMonitor mInputMonitor; private InputChannelCompat.InputEventReceiver mInputEventReceiver; Loading Loading @@ -413,8 +413,8 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack mStateChangeCallback = callback; } public void setButtonForceVisibleChangeCallback(Consumer<Boolean> callback) { mButtonForceVisibleCallback = callback; public void setButtonForcedVisibleChangeCallback(Consumer<Boolean> callback) { mButtonForcedVisibleCallback = callback; } public int getEdgeWidthLeft() { Loading @@ -429,13 +429,14 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack Resources res = mNavigationModeController.getCurrentUserContext().getResources(); mEdgeWidthLeft = mGestureNavigationSettingsObserver.getLeftSensitivity(res); mEdgeWidthRight = mGestureNavigationSettingsObserver.getRightSensitivity(res); final boolean previousForceVisible = mIsButtonForceVisible; mIsButtonForceVisible = final boolean previousForcedVisible = mIsButtonForcedVisible; mIsButtonForcedVisible = mGestureNavigationSettingsObserver.areNavigationButtonForcedVisible(); if (previousForceVisible != mIsButtonForceVisible && mButtonForceVisibleCallback != null) { mButtonForceVisibleCallback.accept(mIsButtonForceVisible); if (previousForcedVisible != mIsButtonForcedVisible && mButtonForcedVisibleCallback != null) { mButtonForcedVisibleCallback.accept(mIsButtonForcedVisible); } mIsBackGestureAllowed = !mIsButtonForceVisible; mIsBackGestureAllowed = !mIsButtonForcedVisible; final DisplayMetrics dm = res.getDisplayMetrics(); final float defaultGestureHeight = res.getDimension( Loading Loading @@ -635,6 +636,10 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack return mIsEnabled && mIsBackGestureAllowed; } public boolean isButtonForcedVisible() { return mIsButtonForcedVisible; } /** * Update the PiP bounds, used for exclusion calculation. */ Loading Loading
packages/SystemUI/src/com/android/systemui/navigationbar/NavigationBar.java +4 −11 Original line number Diff line number Diff line Loading @@ -164,6 +164,8 @@ import com.android.systemui.util.ViewController; import com.android.wm.shell.back.BackAnimation; import com.android.wm.shell.pip.Pip; import dagger.Lazy; import java.io.PrintWriter; import java.util.Locale; import java.util.Map; Loading @@ -173,8 +175,6 @@ import java.util.function.Consumer; import javax.inject.Inject; import dagger.Lazy; /** * Contains logic for a navigation bar view. */ Loading Loading @@ -251,12 +251,6 @@ public class NavigationBar extends ViewController<NavigationBarView> implements private boolean mTransientShown; private boolean mTransientShownFromGestureOnSystemBar; /** * This is to indicate whether the navigation bar button is forced visible. This is true * when the setup wizard is on display. When that happens, the window frame should be provided * as insets size directly. */ private boolean mIsButtonForceVisible; private int mNavBarMode = NAV_BAR_MODE_3BUTTON; private LightBarController mLightBarController; private final LightBarController mMainLightBarController; Loading Loading @@ -670,8 +664,7 @@ public class NavigationBar extends ViewController<NavigationBarView> implements mView.setTouchHandler(mTouchHandler); setNavBarMode(mNavBarMode); mEdgeBackGestureHandler.setStateChangeCallback(mView::updateStates); mEdgeBackGestureHandler.setButtonForceVisibleChangeCallback((forceVisible) -> { mIsButtonForceVisible = forceVisible; mEdgeBackGestureHandler.setButtonForcedVisibleChangeCallback((forceVisible) -> { repositionNavigationBar(mCurrentRotation); }); mNavigationBarTransitions.addListener(this::onBarTransition); Loading Loading @@ -1710,7 +1703,7 @@ public class NavigationBar extends ViewController<NavigationBarView> implements private InsetsFrameProvider[] getInsetsFrameProvider(int insetsHeight, Context userContext) { final InsetsFrameProvider navBarProvider; if (insetsHeight != -1 && !mIsButtonForceVisible) { if (insetsHeight != -1 && !mEdgeBackGestureHandler.isButtonForcedVisible()) { navBarProvider = new InsetsFrameProvider( ITYPE_NAVIGATION_BAR, Insets.of(0, 0, 0, insetsHeight)); // Use window frame for IME. Loading
packages/SystemUI/src/com/android/systemui/navigationbar/gestural/EdgeBackGestureHandler.java +14 −9 Original line number Diff line number Diff line Loading @@ -178,7 +178,7 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack private final OverviewProxyService mOverviewProxyService; private final SysUiState mSysUiState; private Runnable mStateChangeCallback; private Consumer<Boolean> mButtonForceVisibleCallback; private Consumer<Boolean> mButtonForcedVisibleCallback; private final PluginManager mPluginManager; private final ProtoTracer mProtoTracer; Loading Loading @@ -246,7 +246,7 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack private boolean mGestureBlockingActivityRunning; private boolean mIsNewBackAffordanceEnabled; private boolean mIsTrackpadGestureBackEnabled; private boolean mIsButtonForceVisible; private boolean mIsButtonForcedVisible; private InputMonitor mInputMonitor; private InputChannelCompat.InputEventReceiver mInputEventReceiver; Loading Loading @@ -413,8 +413,8 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack mStateChangeCallback = callback; } public void setButtonForceVisibleChangeCallback(Consumer<Boolean> callback) { mButtonForceVisibleCallback = callback; public void setButtonForcedVisibleChangeCallback(Consumer<Boolean> callback) { mButtonForcedVisibleCallback = callback; } public int getEdgeWidthLeft() { Loading @@ -429,13 +429,14 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack Resources res = mNavigationModeController.getCurrentUserContext().getResources(); mEdgeWidthLeft = mGestureNavigationSettingsObserver.getLeftSensitivity(res); mEdgeWidthRight = mGestureNavigationSettingsObserver.getRightSensitivity(res); final boolean previousForceVisible = mIsButtonForceVisible; mIsButtonForceVisible = final boolean previousForcedVisible = mIsButtonForcedVisible; mIsButtonForcedVisible = mGestureNavigationSettingsObserver.areNavigationButtonForcedVisible(); if (previousForceVisible != mIsButtonForceVisible && mButtonForceVisibleCallback != null) { mButtonForceVisibleCallback.accept(mIsButtonForceVisible); if (previousForcedVisible != mIsButtonForcedVisible && mButtonForcedVisibleCallback != null) { mButtonForcedVisibleCallback.accept(mIsButtonForcedVisible); } mIsBackGestureAllowed = !mIsButtonForceVisible; mIsBackGestureAllowed = !mIsButtonForcedVisible; final DisplayMetrics dm = res.getDisplayMetrics(); final float defaultGestureHeight = res.getDimension( Loading Loading @@ -635,6 +636,10 @@ public class EdgeBackGestureHandler implements PluginListener<NavigationEdgeBack return mIsEnabled && mIsBackGestureAllowed; } public boolean isButtonForcedVisible() { return mIsButtonForcedVisible; } /** * Update the PiP bounds, used for exclusion calculation. */ Loading