Updates StatsLogManager to log LauncherAtom.ItemInfo directly.
This method is requied for logging tap on QSB with just container info.
Bug: 154717227
Change-Id: I0c61c86724b4faafe4073a578b92a654ca23727a
diff --git a/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java b/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java
index a88ba3c..ebb44e2 100644
--- a/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java
+++ b/quickstep/src/com/android/quickstep/logging/StatsLogCompatManager.java
@@ -98,6 +98,22 @@
}
/**
+ * Logs an event.
+ *
+ * @param event an enum implementing EventEnum interface.
+ * @param atomItemInfo item typically containing app or task launch related information.
+ */
+ @Override
+ public void log(EventEnum event, @Nullable LauncherAtom.ItemInfo atomItemInfo, int srcState,
+ int dstState) {
+ write(event, DEFAULT_INSTANCE_ID,
+ atomItemInfo == null ? LauncherAtom.ItemInfo.getDefaultInstance() : atomItemInfo,
+ null,
+ srcState,
+ dstState);
+ }
+
+ /**
* Logs an event and accompanying {@link InstanceId} and {@link LauncherAtom.ItemInfo}.
*/
@Override
@@ -171,7 +187,13 @@
)).build();
}
}
+ write(event, instanceId, atomInfo, info, srcState, dstState);
+ }
+ private static void write(EventEnum event, InstanceId instanceId,
+ LauncherAtom.ItemInfo atomInfo,
+ @Nullable ItemInfo info,
+ int srcState, int dstState) {
if (IS_VERBOSE) {
String name = (event instanceof Enum) ? ((Enum) event).name() :
event.getId() + "";
diff --git a/src/com/android/launcher3/logging/StatsLogManager.java b/src/com/android/launcher3/logging/StatsLogManager.java
index e95c062..fee91b0 100644
--- a/src/com/android/launcher3/logging/StatsLogManager.java
+++ b/src/com/android/launcher3/logging/StatsLogManager.java
@@ -21,6 +21,7 @@
import com.android.launcher3.LauncherState;
import com.android.launcher3.R;
+import com.android.launcher3.logger.LauncherAtom;
import com.android.launcher3.logging.StatsLogUtils.LogStateProvider;
import com.android.launcher3.model.data.ItemInfo;
import com.android.launcher3.util.ResourceBasedOverride;
@@ -217,6 +218,16 @@
}
/**
+ * Logs an event and accompanying {@link LauncherState}s.
+ *
+ * @param event an enum implementing EventEnum interface.
+ * @param launcherAtomItemInfo item typically containing app or task launch related information.
+ */
+ public void log(EventEnum event, @Nullable LauncherAtom.ItemInfo launcherAtomItemInfo,
+ int srcState, int dstState) {
+ }
+
+ /**
* Logs an event.
*
* @param event an enum implementing EventEnum interface.