diff options
| author | 2020-07-03 12:02:32 +0000 | |
|---|---|---|
| committer | 2020-07-03 12:02:32 +0000 | |
| commit | ae3d56163f11d3ac0e8d0cfabbfe229c3c76b414 (patch) | |
| tree | 39d37494a43bc8767e0d0a6fe9945e69c8f55c45 | |
| parent | c4ce6935424e2358d51ebd47c23c413441e6bd3b (diff) | |
| parent | 641c8844babc0178c08dd88eaf5908f076b44e9f (diff) | |
Merge "Fix Keyboard stays on while startSeamlessRotation" into rvc-dev am: 641c8844ba
Original change: https://googleplex-android-review.googlesource.com/c/platform/frameworks/base/+/12066148
Change-Id: I16986930ac6b8c6d7b53b2140af3959f2f49fb6b
| -rw-r--r-- | services/core/java/com/android/server/wm/WindowState.java | 7 |
1 files changed, 7 insertions, 0 deletions
diff --git a/services/core/java/com/android/server/wm/WindowState.java b/services/core/java/com/android/server/wm/WindowState.java index b65020d7eaa6..837fafec1634 100644 --- a/services/core/java/com/android/server/wm/WindowState.java +++ b/services/core/java/com/android/server/wm/WindowState.java @@ -26,6 +26,7 @@ import static android.app.WindowConfiguration.isSplitScreenWindowingMode; import static android.content.res.Configuration.ORIENTATION_LANDSCAPE; import static android.os.PowerManager.DRAW_WAKE_LOCK; import static android.os.Trace.TRACE_TAG_WINDOW_MANAGER; +import static android.view.InsetsState.ITYPE_IME; import static android.view.SurfaceControl.Transaction; import static android.view.View.SYSTEM_UI_FLAG_HIDE_NAVIGATION; import static android.view.View.SYSTEM_UI_FLAG_IMMERSIVE_STICKY; @@ -757,6 +758,12 @@ class WindowState extends WindowContainer<WindowState> implements WindowManagerP oldRotation = mPendingSeamlessRotate.getOldRotation(); } + // Skip performing seamless rotation when the controlled insets is IME with visible state. + if (mControllableInsetProvider != null + && mControllableInsetProvider.getSource().getType() == ITYPE_IME) { + return; + } + if (mForceSeamlesslyRotate || requested) { if (mControllableInsetProvider != null) { mControllableInsetProvider.startSeamlessRotation(); |