summaryrefslogtreecommitdiffstats
path: root/src/com/android/launcher3/util/PendingAnimation.java
diff options
context:
space:
mode:
authorTony Wickham <twickham@google.com>2018-04-06 12:25:10 -0700
committerTony Wickham <twickham@google.com>2018-04-06 15:41:39 -0700
commit9bd862e588aad4971f0f4383412b20ddeb0ff4b4 (patch)
tree8b112017ac07b3a8ff4dfdc050102ddc5727320d /src/com/android/launcher3/util/PendingAnimation.java
parentb3ad0edc1476ae1562bb5e0b26f253b2e504285f (diff)
downloadandroid_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.java20
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;
+ }
+ }
}