Lock free app animations (5/n): Reimplement skip first frame

Test: go/wm-smoke
Test: Close app, inspect transition with WindowScope, make sure
first frame of animation is skipped
Bug:

Change-Id: I68c135621df47c50696e318c4394da36ce806922
diff --git a/services/core/java/com/android/server/wm/WindowAnimationSpec.java b/services/core/java/com/android/server/wm/WindowAnimationSpec.java
index 9504d45..20e19f4 100644
--- a/services/core/java/com/android/server/wm/WindowAnimationSpec.java
+++ b/services/core/java/com/android/server/wm/WindowAnimationSpec.java
@@ -38,10 +38,12 @@
     private Animation mAnimation;
     private final Point mPosition = new Point();
     private final ThreadLocal<TmpValues> mThreadLocalTmps = ThreadLocal.withInitial(TmpValues::new);
+    private final boolean mCanSkipFirstFrame;
 
-    public WindowAnimationSpec(Animation animation, Point position)  {
+    public WindowAnimationSpec(Animation animation, Point position, boolean canSkipFirstFrame)  {
         mAnimation = animation;
         mPosition.set(position.x, position.y);
+        mCanSkipFirstFrame = canSkipFirstFrame;
     }
 
     @Override
@@ -88,6 +90,11 @@
         }
     }
 
+    @Override
+    public boolean canSkipFirstFrame() {
+        return mCanSkipFirstFrame;
+    }
+
     /**
      * Tries to find a {@link TranslateAnimation} inside the {@code animation}.
      *