OSDN Git Service

Fix a transparent flicker due to wrong crop
authorChong Zhang <chz@google.com>
Fri, 29 Apr 2016 22:58:45 +0000 (15:58 -0700)
committerChong Zhang <chz@google.com>
Tue, 3 May 2016 22:28:01 +0000 (22:28 +0000)
When transfering an animation, copy over app animator transformation
in addition to the animation object itself.

bug: 28399102

Change-Id: I8694a76993476b19ec61d74680d6fc51326a18bf

services/core/java/com/android/server/wm/AppWindowAnimator.java

index abb1bb1..49dab0a 100644 (file)
@@ -224,6 +224,12 @@ public class AppWindowAnimator {
         if (transferWinAnimator != null) {
             mAllAppWinAnimators.remove(transferWinAnimator);
             toAppAnimator.mAllAppWinAnimators.add(transferWinAnimator);
+            toAppAnimator.hasTransformation = transferWinAnimator.mAppAnimator.hasTransformation;
+            if (toAppAnimator.hasTransformation) {
+                toAppAnimator.transformation.set(transferWinAnimator.mAppAnimator.transformation);
+            } else {
+                toAppAnimator.transformation.clear();
+            }
             transferWinAnimator.mAppAnimator = toAppAnimator;
         }
     }