diff options
author | Jeff Brown <jeffbrown@google.com> | 2012-05-03 11:56:25 -0700 |
---|---|---|
committer | Android (Google) Code Review <android-gerrit@google.com> | 2012-05-03 11:56:25 -0700 |
commit | e19dbd9f9d0fea5959d8384d5d9d577d25cc8963 (patch) | |
tree | c24f5ecea7e2e72e1ad9dc14050be89a25f61bf0 /services/java | |
parent | 23746be026ae2e9854b33c0e8872463c6191a734 (diff) | |
parent | 93de746e5554bc9397ca8109f57875d92e64eabc (diff) | |
download | frameworks_base-e19dbd9f9d0fea5959d8384d5d9d577d25cc8963.zip frameworks_base-e19dbd9f9d0fea5959d8384d5d9d577d25cc8963.tar.gz frameworks_base-e19dbd9f9d0fea5959d8384d5d9d577d25cc8963.tar.bz2 |
Merge "Separate the internal and external display rotations." into jb-dev
Diffstat (limited to 'services/java')
-rw-r--r-- | services/java/com/android/server/input/InputManagerService.java | 10 | ||||
-rwxr-xr-x | services/java/com/android/server/wm/WindowManagerService.java | 5 |
2 files changed, 10 insertions, 5 deletions
diff --git a/services/java/com/android/server/input/InputManagerService.java b/services/java/com/android/server/input/InputManagerService.java index 117e064..299649d 100644 --- a/services/java/com/android/server/input/InputManagerService.java +++ b/services/java/com/android/server/input/InputManagerService.java @@ -140,7 +140,8 @@ public class InputManagerService extends IInputManager.Stub implements Watchdog. private static native void nativeStart(int ptr); private static native void nativeSetDisplaySize(int ptr, int displayId, int width, int height, int externalWidth, int externalHeight); - private static native void nativeSetDisplayOrientation(int ptr, int displayId, int rotation); + private static native void nativeSetDisplayOrientation(int ptr, int displayId, + int rotation, int externalRotation); private static native int nativeGetScanCodeState(int ptr, int deviceId, int sourceMask, int scanCode); @@ -287,15 +288,16 @@ public class InputManagerService extends IInputManager.Stub implements Watchdog. nativeSetDisplaySize(mPtr, displayId, width, height, externalWidth, externalHeight); } - public void setDisplayOrientation(int displayId, int rotation) { + public void setDisplayOrientation(int displayId, int rotation, int externalRotation) { if (rotation < Surface.ROTATION_0 || rotation > Surface.ROTATION_270) { throw new IllegalArgumentException("Invalid rotation."); } if (DEBUG) { - Slog.d(TAG, "Setting display #" + displayId + " orientation to " + rotation); + Slog.d(TAG, "Setting display #" + displayId + " orientation to rotation " + rotation + + " external rotation " + externalRotation); } - nativeSetDisplayOrientation(mPtr, displayId, rotation); + nativeSetDisplayOrientation(mPtr, displayId, rotation, externalRotation); } /** diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index ee74e40..8eda9ca 100755 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -5580,7 +5580,8 @@ public class WindowManagerService extends IWindowManager.Stub mWaitingForConfig = true; mLayoutNeeded = true; startFreezingDisplayLocked(inTransaction); - mInputManager.setDisplayOrientation(0, rotation); + mInputManager.setDisplayOrientation(0, rotation, + mDisplay != null ? mDisplay.getExternalRotation() : Surface.ROTATION_0); // We need to update our screen size information to match the new // rotation. Note that this is redundant with the later call to @@ -6606,6 +6607,8 @@ public class WindowManagerService extends IWindowManager.Stub mInputManager.setDisplaySize(Display.DEFAULT_DISPLAY, mDisplay.getRawWidth(), mDisplay.getRawHeight(), mDisplay.getRawExternalWidth(), mDisplay.getRawExternalHeight()); + mInputManager.setDisplayOrientation(Display.DEFAULT_DISPLAY, + mDisplay.getRotation(), mDisplay.getExternalRotation()); mPolicy.setInitialDisplaySize(mDisplay, mInitialDisplayWidth, mInitialDisplayHeight); } |