diff options
Diffstat (limited to 'services/core/java/com/android/server/wm/WindowStateAnimator.java')
-rw-r--r-- | services/core/java/com/android/server/wm/WindowStateAnimator.java | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/services/core/java/com/android/server/wm/WindowStateAnimator.java b/services/core/java/com/android/server/wm/WindowStateAnimator.java index ec89b37..424e2e2 100644 --- a/services/core/java/com/android/server/wm/WindowStateAnimator.java +++ b/services/core/java/com/android/server/wm/WindowStateAnimator.java @@ -122,6 +122,7 @@ class WindowStateAnimator { // used. int mAnimDw; int mAnimDh; + boolean mAnimateMove = false; float mDsDx=1, mDtDx=0, mDsDy=0, mDtDy=1; float mLastDsDx=1, mLastDtDx=0, mLastDsDy=0, mLastDtDy=1; @@ -290,9 +291,15 @@ class WindowStateAnimator { " wh=" + mWin.mFrame.height() + " dw=" + mAnimDw + " dh=" + mAnimDh + " scale=" + mService.getWindowAnimationScaleLocked()); - mAnimation.initialize(mWin.mFrame.width(), mWin.mFrame.height(), - mAnimDw, mAnimDh); final DisplayInfo displayInfo = displayContent.getDisplayInfo(); + if (mAnimateMove) { + mAnimateMove = false; + mAnimation.initialize(mWin.mFrame.width(), mWin.mFrame.height(), + mAnimDw, mAnimDh); + } else { + mAnimation.initialize(mWin.mFrame.width(), mWin.mFrame.height(), + displayInfo.appWidth, displayInfo.appHeight); + } mAnimDw = displayInfo.appWidth; mAnimDh = displayInfo.appHeight; mAnimation.setStartTime(mAnimationStartTime != -1 |