diff options
| author | 2011-05-19 03:46:24 -0700 | |
|---|---|---|
| committer | 2011-05-19 03:46:24 -0700 | |
| commit | d37b84edf55e5c242de23f1e7dfc61cc150e7b54 (patch) | |
| tree | ced920943afde82e878daaa4c3acef896c22141f | |
| parent | f74782f6a1b5c8e0529717260a714b4efe3a5c6c (diff) | |
| parent | ba8fc5b059228402afa965e175d5f6655e3fe555 (diff) | |
am ba8fc5b0: am 8416e5cf: am 6ad07db7: Merge "Fix fake display size when rotated." into honeycomb-mr2
* commit 'ba8fc5b059228402afa965e175d5f6655e3fe555':
Fix fake display size when rotated.
| -rw-r--r-- | services/java/com/android/server/wm/WindowManagerService.java | 18 |
1 files changed, 16 insertions, 2 deletions
diff --git a/services/java/com/android/server/wm/WindowManagerService.java b/services/java/com/android/server/wm/WindowManagerService.java index 0b3f613bcda3..9890bec61647 100644 --- a/services/java/com/android/server/wm/WindowManagerService.java +++ b/services/java/com/android/server/wm/WindowManagerService.java @@ -6502,8 +6502,22 @@ public class WindowManagerService extends IWindowManager.Stub } if (mBaseDisplayWidth < mInitialDisplayWidth || mBaseDisplayHeight < mInitialDisplayHeight) { - Rect outer = new Rect(0, 0, mInitialDisplayWidth, mInitialDisplayHeight); - Rect inner = new Rect(0, 0, mBaseDisplayWidth, mBaseDisplayHeight); + int initW, initH, baseW, baseH; + final boolean rotated = (mRotation == Surface.ROTATION_90 + || mRotation == Surface.ROTATION_270); + if (rotated) { + initW = mInitialDisplayHeight; + initH = mInitialDisplayWidth; + baseW = mBaseDisplayHeight; + baseH = mBaseDisplayWidth; + } else { + initW = mInitialDisplayWidth; + initH = mInitialDisplayHeight; + baseW = mBaseDisplayWidth; + baseH = mBaseDisplayHeight; + } + Rect outer = new Rect(0, 0, initW, initH); + Rect inner = new Rect(0, 0, baseW, baseH); try { mBlackFrame = new BlackFrame(mFxSession, outer, inner, MASK_LAYER); } catch (Surface.OutOfResourcesException e) { |