diff options
author | Tony Wickham <twickham@google.com> | 2018-04-06 12:25:10 -0700 |
---|---|---|
committer | Tony Wickham <twickham@google.com> | 2018-04-06 15:41:39 -0700 |
commit | 9bd862e588aad4971f0f4383412b20ddeb0ff4b4 (patch) | |
tree | 8b112017ac07b3a8ff4dfdc050102ddc5727320d /src/com/android/launcher3/util/PendingAnimation.java | |
parent | b3ad0edc1476ae1562bb5e0b26f253b2e504285f (diff) | |
download | android_packages_apps_Trebuchet-9bd862e588aad4971f0f4383412b20ddeb0ff4b4.tar.gz android_packages_apps_Trebuchet-9bd862e588aad4971f0f4383412b20ddeb0ff4b4.tar.bz2 android_packages_apps_Trebuchet-9bd862e588aad4971f0f4383412b20ddeb0ff4b4.zip |
Log dismissing or launching recent tasks
We now pass the log action (e.g. SWIPE or FLING) to the pending
animation, so that the end listener can log appropriately. This
is used when swiping down or up on a task, for example.
Bug: 73783784
Change-Id: I5c2eee24e8b23cf4af68d503d3435a6d8088dd8a
Diffstat (limited to 'src/com/android/launcher3/util/PendingAnimation.java')
-rw-r--r-- | src/com/android/launcher3/util/PendingAnimation.java | 20 |
1 files changed, 15 insertions, 5 deletions
diff --git a/src/com/android/launcher3/util/PendingAnimation.java b/src/com/android/launcher3/util/PendingAnimation.java index 4116d56e1..617a38bbe 100644 --- a/src/com/android/launcher3/util/PendingAnimation.java +++ b/src/com/android/launcher3/util/PendingAnimation.java @@ -32,7 +32,7 @@ import java.util.function.Consumer; @TargetApi(Build.VERSION_CODES.O) public class PendingAnimation { - private final ArrayList<Consumer<Boolean>> mEndListeners = new ArrayList<>(); + private final ArrayList<Consumer<OnEndListener>> mEndListeners = new ArrayList<>(); public final AnimatorSet anim; @@ -40,14 +40,24 @@ public class PendingAnimation { this.anim = anim; } - public void finish(boolean isSuccess) { - for (Consumer<Boolean> listeners : mEndListeners) { - listeners.accept(isSuccess); + public void finish(boolean isSuccess, int logAction) { + for (Consumer<OnEndListener> listeners : mEndListeners) { + listeners.accept(new OnEndListener(isSuccess, logAction)); } mEndListeners.clear(); } - public void addEndListener(Consumer<Boolean> listener) { + public void addEndListener(Consumer<OnEndListener> listener) { mEndListeners.add(listener); } + + public static class OnEndListener { + public boolean isSuccess; + public int logAction; + + public OnEndListener(boolean isSuccess, int logAction) { + this.isSuccess = isSuccess; + this.logAction = logAction; + } + } } |