Loading services/core/java/com/android/server/wm/DisplayContent.java +7 −2 Original line number Diff line number Diff line Loading @@ -5149,8 +5149,13 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp /** @return the orientation of the display when it's rotation is ROTATION_0. */ int getNaturalOrientation() { return mBaseDisplayWidth < mBaseDisplayHeight ? ORIENTATION_PORTRAIT : ORIENTATION_LANDSCAPE; final Configuration config = getConfiguration(); if (config.windowConfiguration.getDisplayRotation() == ROTATION_0) { return config.orientation; } final Rect frame = mDisplayPolicy.getDecorInsetsInfo( ROTATION_0, mBaseDisplayWidth, mBaseDisplayHeight).mConfigFrame; return frame.width() <= frame.height() ? ORIENTATION_PORTRAIT : ORIENTATION_LANDSCAPE; } void performLayout(boolean initial, boolean updateInputWindows) { Loading services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java +2 −0 Original line number Diff line number Diff line Loading @@ -993,7 +993,9 @@ public class DisplayContentTests extends WindowTestsBase { dc.getDisplayPolicy().getDecorInsetsInfo(ROTATION_0, dc.mBaseDisplayHeight, dc.mBaseDisplayWidth).mConfigFrame.set(0, 0, 1000, 990); dc.computeScreenConfiguration(config, ROTATION_0); dc.onRequestedOverrideConfigurationChanged(config); assertEquals(Configuration.ORIENTATION_LANDSCAPE, config.orientation); assertEquals(Configuration.ORIENTATION_LANDSCAPE, dc.getNaturalOrientation()); } @Test Loading Loading
services/core/java/com/android/server/wm/DisplayContent.java +7 −2 Original line number Diff line number Diff line Loading @@ -5149,8 +5149,13 @@ class DisplayContent extends RootDisplayArea implements WindowManagerPolicy.Disp /** @return the orientation of the display when it's rotation is ROTATION_0. */ int getNaturalOrientation() { return mBaseDisplayWidth < mBaseDisplayHeight ? ORIENTATION_PORTRAIT : ORIENTATION_LANDSCAPE; final Configuration config = getConfiguration(); if (config.windowConfiguration.getDisplayRotation() == ROTATION_0) { return config.orientation; } final Rect frame = mDisplayPolicy.getDecorInsetsInfo( ROTATION_0, mBaseDisplayWidth, mBaseDisplayHeight).mConfigFrame; return frame.width() <= frame.height() ? ORIENTATION_PORTRAIT : ORIENTATION_LANDSCAPE; } void performLayout(boolean initial, boolean updateInputWindows) { Loading
services/tests/wmtests/src/com/android/server/wm/DisplayContentTests.java +2 −0 Original line number Diff line number Diff line Loading @@ -993,7 +993,9 @@ public class DisplayContentTests extends WindowTestsBase { dc.getDisplayPolicy().getDecorInsetsInfo(ROTATION_0, dc.mBaseDisplayHeight, dc.mBaseDisplayWidth).mConfigFrame.set(0, 0, 1000, 990); dc.computeScreenConfiguration(config, ROTATION_0); dc.onRequestedOverrideConfigurationChanged(config); assertEquals(Configuration.ORIENTATION_LANDSCAPE, config.orientation); assertEquals(Configuration.ORIENTATION_LANDSCAPE, dc.getNaturalOrientation()); } @Test Loading