Merge "Add logging for Task Icon interaction" into ub-launcher3-qt-dev
diff --git a/protos/launcher_log.proto b/protos/launcher_log.proto
index 4974dcb..02c6b0f 100644
--- a/protos/launcher_log.proto
+++ b/protos/launcher_log.proto
@@ -71,6 +71,7 @@
NOTIFICATION = 8;
TASK = 9; // Each page of Recents UI (QuickStep)
WEB_APP = 10;
+ TASK_ICON = 11;
}
// Used to define what type of container a Target would represent.
@@ -115,6 +116,7 @@
REMOTE_ACTION_SHORTCUT = 17;
APP_USAGE_SETTINGS = 18;
BACK_GESTURE = 19;
+ UNDO = 20;
}
enum TipType {
diff --git a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java
index 05fe2d0..848c214 100644
--- a/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java
+++ b/quickstep/recents_ui_overrides/src/com/android/quickstep/views/TaskView.java
@@ -49,6 +49,8 @@
import com.android.launcher3.R;
import com.android.launcher3.anim.AnimatorPlaybackController;
import com.android.launcher3.anim.Interpolators;
+import com.android.launcher3.logging.UserEventDispatcher;
+import com.android.launcher3.userevent.nano.LauncherLogProto;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Direction;
import com.android.launcher3.userevent.nano.LauncherLogProto.Action.Touch;
import com.android.launcher3.util.PendingAnimation;
@@ -366,9 +368,11 @@
}
}
- private boolean showTaskMenu() {
+ private boolean showTaskMenu(int action) {
getRecentsView().snapToPage(getRecentsView().indexOfChild(this));
mMenuView = TaskMenuView.showForTask(this);
+ UserEventDispatcher.newInstance(getContext()).logActionOnItem(action, Direction.NONE,
+ LauncherLogProto.ItemType.TASK_ICON);
if (mMenuView != null) {
mMenuView.addOnAttachStateChangeListener(mTaskMenuStateListener);
}
@@ -378,10 +382,10 @@
private void setIcon(Drawable icon) {
if (icon != null) {
mIconView.setDrawable(icon);
- mIconView.setOnClickListener(v -> showTaskMenu());
+ mIconView.setOnClickListener(v -> showTaskMenu(Touch.TAP));
mIconView.setOnLongClickListener(v -> {
requestDisallowInterceptTouchEvent(true);
- return showTaskMenu();
+ return showTaskMenu(Touch.LONGPRESS);
});
} else {
mIconView.setDrawable(null);