Merge "Show floating rotation button in sticky immersive mode if in gesture nav" into tm-qpr-dev
This commit is contained in:
@@ -20,6 +20,7 @@ import static android.content.pm.PackageManager.FEATURE_PC;
|
|||||||
import static android.view.Display.DEFAULT_DISPLAY;
|
import static android.view.Display.DEFAULT_DISPLAY;
|
||||||
|
|
||||||
import static com.android.internal.view.RotationPolicy.NATURAL_ROTATION;
|
import static com.android.internal.view.RotationPolicy.NATURAL_ROTATION;
|
||||||
|
import static com.android.systemui.shared.system.QuickStepContract.isGesturalMode;
|
||||||
|
|
||||||
import android.animation.Animator;
|
import android.animation.Animator;
|
||||||
import android.animation.AnimatorListenerAdapter;
|
import android.animation.AnimatorListenerAdapter;
|
||||||
@@ -97,6 +98,7 @@ public class RotationButtonController {
|
|||||||
@SuppressLint("InlinedApi")
|
@SuppressLint("InlinedApi")
|
||||||
private @WindowInsetsController.Behavior
|
private @WindowInsetsController.Behavior
|
||||||
int mBehavior = WindowInsetsController.BEHAVIOR_DEFAULT;
|
int mBehavior = WindowInsetsController.BEHAVIOR_DEFAULT;
|
||||||
|
private int mNavBarMode;
|
||||||
private boolean mSkipOverrideUserLockPrefsOnce;
|
private boolean mSkipOverrideUserLockPrefsOnce;
|
||||||
private final int mLightIconColor;
|
private final int mLightIconColor;
|
||||||
private final int mDarkIconColor;
|
private final int mDarkIconColor;
|
||||||
@@ -397,6 +399,10 @@ public class RotationButtonController {
|
|||||||
if (rotateSuggestionsDisabled) onRotationSuggestionsDisabled();
|
if (rotateSuggestionsDisabled) onRotationSuggestionsDisabled();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
public void onNavigationModeChanged(int mode) {
|
||||||
|
mNavBarMode = mode;
|
||||||
|
}
|
||||||
|
|
||||||
public void onBehaviorChanged(int displayId, @WindowInsetsController.Behavior int behavior) {
|
public void onBehaviorChanged(int displayId, @WindowInsetsController.Behavior int behavior) {
|
||||||
if (DEFAULT_DISPLAY != displayId) {
|
if (DEFAULT_DISPLAY != displayId) {
|
||||||
return;
|
return;
|
||||||
@@ -433,7 +439,8 @@ public class RotationButtonController {
|
|||||||
*/
|
*/
|
||||||
@SuppressLint("InlinedApi")
|
@SuppressLint("InlinedApi")
|
||||||
private boolean canShowRotationButton() {
|
private boolean canShowRotationButton() {
|
||||||
return mIsNavigationBarShowing || mBehavior == WindowInsetsController.BEHAVIOR_DEFAULT;
|
return mIsNavigationBarShowing || mBehavior == WindowInsetsController.BEHAVIOR_DEFAULT
|
||||||
|
|| isGesturalMode(mNavBarMode);
|
||||||
}
|
}
|
||||||
|
|
||||||
@DrawableRes
|
@DrawableRes
|
||||||
|
|||||||
@@ -812,6 +812,7 @@ public class NavigationBarView extends FrameLayout {
|
|||||||
mImeDrawsImeNavBar = imeDrawsImeNavBar;
|
mImeDrawsImeNavBar = imeDrawsImeNavBar;
|
||||||
mBarTransitions.onNavigationModeChanged(mNavBarMode);
|
mBarTransitions.onNavigationModeChanged(mNavBarMode);
|
||||||
mEdgeBackGestureHandler.onNavigationModeChanged(mNavBarMode);
|
mEdgeBackGestureHandler.onNavigationModeChanged(mNavBarMode);
|
||||||
|
mRotationButtonController.onNavigationModeChanged(mNavBarMode);
|
||||||
updateRotationButton();
|
updateRotationButton();
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
Reference in New Issue
Block a user