6/ Update recents animation classes to have their respective responsibilities

- RecentsAnimationTargets: manages information about the targets only
  RecentsAnimationCallbacks: manages callbacks from WM about the animation
  RecentsAnimationWrapper: manages calls into WM to update the animation
                           (to be renamed accordingly in a follow up CL)
- Create the Callbacks as a part of starting the recents animation, and
  have the callbacks create the controller wrapper and the targets, which
  are both notified to the listeners through the callbacks.
- Instead of passing through a callback for recents animation finished,
  have it be a part of the recents animation callbacks.

Bug: 141886704

Change-Id: I4ff26a175654e82efe059fa74d1f310e93961dc9
This commit is contained in:
Winson Chung
2019-10-02 11:54:14 -07:00
parent bfcee430fe
commit 9e876a34ee
12 changed files with 311 additions and 271 deletions
@@ -86,6 +86,9 @@ public class RemoteAnimationTargets {
for (RemoteAnimationTargetCompat target : unfilteredApps) {
target.release();
}
for (RemoteAnimationTargetCompat target : wallpapers) {
target.release();
}
} else {
applier.addAfterApplyCallback(this::release);
}