diff --git a/services/core/java/com/android/server/wm/AppWindowToken.java b/services/core/java/com/android/server/wm/AppWindowToken.java index 5d739d13c898e..5838a37bf9c9c 100644 --- a/services/core/java/com/android/server/wm/AppWindowToken.java +++ b/services/core/java/com/android/server/wm/AppWindowToken.java @@ -1103,6 +1103,11 @@ class AppWindowToken extends WindowToken implements WindowManagerService.AppFree return mOrientation; } + /** Returns the app's preferred orientation regardless of its currently visibility state. */ + int getOrientationIgnoreVisibility() { + return mOrientation; + } + @Override void checkAppWindowsReadyToShow() { if (allDrawn == mAppAnimator.allDrawn) { diff --git a/services/core/java/com/android/server/wm/WindowManagerService.java b/services/core/java/com/android/server/wm/WindowManagerService.java index 77da22c09abdc..6ec3161af23a2 100644 --- a/services/core/java/com/android/server/wm/WindowManagerService.java +++ b/services/core/java/com/android/server/wm/WindowManagerService.java @@ -2716,7 +2716,7 @@ public class WindowManagerService extends IWindowManager.Stub return SCREEN_ORIENTATION_UNSPECIFIED; } - return wtoken.getOrientation(); + return wtoken.getOrientationIgnoreVisibility(); } }