diff --git a/quickstep/src/com/android/launcher3/appprediction/AllAppsTipView.java b/quickstep/src/com/android/launcher3/appprediction/AllAppsTipView.java index 8477b103a2..98bf483a3d 100644 --- a/quickstep/src/com/android/launcher3/appprediction/AllAppsTipView.java +++ b/quickstep/src/com/android/launcher3/appprediction/AllAppsTipView.java @@ -19,7 +19,6 @@ package com.android.launcher3.appprediction; import static com.android.launcher3.AbstractFloatingView.TYPE_DISCOVERY_BOUNCE; import static com.android.launcher3.AbstractFloatingView.TYPE_ON_BOARD_POPUP; import static com.android.launcher3.LauncherState.ALL_APPS; -import static com.android.quickstep.logging.UserEventDispatcherExtension.ALL_APPS_PREDICTION_TIPS; import android.os.UserManager; @@ -31,7 +30,6 @@ import com.android.launcher3.Utilities; import com.android.launcher3.allapps.FloatingHeaderView; import com.android.launcher3.statemanager.StateManager.StateListener; import com.android.launcher3.views.ArrowTipView; -import com.android.systemui.shared.system.LauncherEventUtil; /** * ArrowTip helper aligned just above prediction apps, shown to users that enter all apps for the @@ -57,8 +55,7 @@ public class AllAppsTipView { floatingHeaderView.findFixedRowByType(PredictionRowView.class).getLocationOnScreen(coords); ArrowTipView arrowTipView = new ArrowTipView(launcher).setOnClosedCallback(() -> { launcher.getSharedPrefs().edit().putBoolean(ALL_APPS_TIP_SEEN, true).apply(); - launcher.getUserEventDispatcher().logActionTip(LauncherEventUtil.DISMISS, - ALL_APPS_PREDICTION_TIPS); + // TODO: add log to WW }); arrowTipView.show(launcher.getString(R.string.all_apps_prediction_tip), coords[1]); diff --git a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java index 2b3f3953ea..39bf008fc3 100644 --- a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java +++ b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatEduDialog.java @@ -40,7 +40,6 @@ import com.android.launcher3.anim.Interpolators; import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.uioverrides.PredictedAppIcon; -import com.android.launcher3.userevent.nano.LauncherLogProto; import com.android.launcher3.views.AbstractSlideInView; import java.util.List; @@ -122,16 +121,6 @@ public class HotseatEduDialog extends AbstractSlideInView implements Insettable handleClose(true); } - @Override - public void logActionCommand(int command) { - // Since this is on-boarding popup, it is not a user controlled action. - } - - @Override - public int getLogContainerType() { - return LauncherLogProto.ContainerType.TIP; - } - @Override protected boolean isOfType(int type) { return (type & TYPE_ON_BOARD_POPUP) != 0; diff --git a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java index b94e6337d0..1d1296fb5c 100644 --- a/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java +++ b/quickstep/src/com/android/launcher3/hybridhotseat/HotseatPredictionController.java @@ -624,12 +624,6 @@ public class HotseatPredictionController implements DragController.DragListener, //Does nothing } - @Override - public void fillInLogContainerData(ItemInfo childInfo, LauncherLogProto.Target child, - ArrayList parents) { - mHotseat.fillInLogContainerData(childInfo, child, parents); - } - /** * Logs rank info based on current list of predicted items */ diff --git a/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java b/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java index 6ec114e216..bbe7821864 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java +++ b/quickstep/src/com/android/launcher3/uioverrides/states/OverviewState.java @@ -16,7 +16,6 @@ package com.android.launcher3.uioverrides.states; import static com.android.launcher3.anim.Interpolators.DEACCEL_2; -import static com.android.launcher3.logging.LoggerUtils.newContainerTarget; import static com.android.quickstep.SysUINavigationMode.Mode.NO_BUTTON; import static com.android.quickstep.SysUINavigationMode.hideShelfInTwoButtonLandscape; import static com.android.quickstep.SysUINavigationMode.removeShelfFromOverview; @@ -30,7 +29,6 @@ import com.android.launcher3.Launcher; import com.android.launcher3.LauncherState; import com.android.launcher3.R; import com.android.launcher3.Workspace; -import com.android.launcher3.userevent.nano.LauncherLogProto.Action; import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; import com.android.quickstep.SysUINavigationMode; import com.android.quickstep.util.LayoutUtils; @@ -177,8 +175,6 @@ public class OverviewState extends LauncherState { public void onBackPressed(Launcher launcher) { TaskView taskView = launcher.getOverviewPanel().getRunningTaskView(); if (taskView != null) { - launcher.getUserEventDispatcher().logActionCommand(Action.Command.BACK, - newContainerTarget(ContainerType.OVERVIEW)); taskView.launchTask(true); } else { super.onBackPressed(launcher); diff --git a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java index da3c4858a8..60ad4cd66b 100644 --- a/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java +++ b/quickstep/src/com/android/launcher3/uioverrides/touchcontrollers/NavBarToHomeTouchController.java @@ -229,12 +229,12 @@ public class NavBarToHomeTouchController implements TouchController, () -> onSwipeInteractionCompleted(mEndState)); } if (mStartState != mEndState) { - logStateChange(mStartState.containerType, logAction); + // TODO: add to WW log } AbstractFloatingView topOpenView = AbstractFloatingView.getTopOpenView(mLauncher); if (topOpenView != null) { AbstractFloatingView.closeAllOpenViews(mLauncher); - logStateChange(topOpenView.getLogContainerType(), logAction); + // TODO: add to WW log } ActivityManagerWrapper.getInstance() .closeSystemWindows(CLOSE_SYSTEM_WINDOWS_REASON_RECENTS); diff --git a/quickstep/src/com/android/quickstep/OverviewCommandHelper.java b/quickstep/src/com/android/quickstep/OverviewCommandHelper.java index dca33789e5..365cff576a 100644 --- a/quickstep/src/com/android/quickstep/OverviewCommandHelper.java +++ b/quickstep/src/com/android/quickstep/OverviewCommandHelper.java @@ -29,7 +29,6 @@ import android.view.ViewConfiguration; import androidx.annotation.BinderThread; -import com.android.launcher3.logging.UserEventDispatcher; import com.android.launcher3.statemanager.StatefulActivity; import com.android.launcher3.userevent.nano.LauncherLogProto; import com.android.quickstep.util.ActivityInitListener; @@ -87,12 +86,6 @@ public class OverviewCommandHelper { MAIN_EXECUTOR.execute(new HideRecentsCommand()); } - @BinderThread - public void onTip(int actionType, int viewType) { - MAIN_EXECUTOR.execute(() -> - UserEventDispatcher.newInstance(mContext).logActionTip(actionType, viewType)); - } - private class ShowRecentsCommand extends RecentsActivityCommand { private final boolean mTriggeredFromAltTab; diff --git a/quickstep/src/com/android/quickstep/TouchInteractionService.java b/quickstep/src/com/android/quickstep/TouchInteractionService.java index ba0a81fab5..2387692eb9 100644 --- a/quickstep/src/com/android/quickstep/TouchInteractionService.java +++ b/quickstep/src/com/android/quickstep/TouchInteractionService.java @@ -22,7 +22,6 @@ import static android.view.MotionEvent.ACTION_UP; import static com.android.launcher3.config.FeatureFlags.ENABLE_QUICKSTEP_LIVE_TILE; import static com.android.launcher3.util.Executors.MAIN_EXECUTOR; -import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR; import static com.android.quickstep.GestureState.DEFAULT_STATE; import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_INPUT_MONITOR; import static com.android.systemui.shared.system.QuickStepContract.KEY_EXTRA_SYSUI_PROXY; @@ -61,7 +60,6 @@ import com.android.launcher3.R; import com.android.launcher3.ResourceUtils; import com.android.launcher3.Utilities; import com.android.launcher3.config.FeatureFlags; -import com.android.launcher3.logging.UserEventDispatcher; import com.android.launcher3.provider.RestoreDbTask; import com.android.launcher3.statemanager.StatefulActivity; import com.android.launcher3.testing.TestLogging; @@ -141,7 +139,6 @@ public class TouchInteractionService extends Service implements PluginListener implements Launche @CallSuper protected void onDeferredResumed() { logStopAndResume(Action.Command.RESUME); - getUserEventDispatcher().startSession(); // Process any items that were added while Launcher was away. ItemInstallQueue.INSTANCE.get(this) diff --git a/src/com/android/launcher3/SecondaryDropTarget.java b/src/com/android/launcher3/SecondaryDropTarget.java index 56875bb337..2df7f5ad20 100644 --- a/src/com/android/launcher3/SecondaryDropTarget.java +++ b/src/com/android/launcher3/SecondaryDropTarget.java @@ -49,7 +49,6 @@ import com.android.launcher3.util.PackageManagerHelper; import com.android.launcher3.util.Themes; import java.net.URISyntaxException; -import java.util.ArrayList; /** * Drop target which provides a secondary option for an item. @@ -339,12 +338,6 @@ public class SecondaryDropTarget extends ButtonDropTarget implements OnAlarmList mDragObject = d; } - @Override - public void fillInLogContainerData(ItemInfo childInfo, Target child, - ArrayList parents) { - mOriginal.fillInLogContainerData(childInfo, child, parents); - } - @Override public void onLauncherResume() { // We use MATCH_UNINSTALLED_PACKAGES as the app can be on SD card as well. diff --git a/src/com/android/launcher3/Workspace.java b/src/com/android/launcher3/Workspace.java index 6bfd3495e5..383512b128 100644 --- a/src/com/android/launcher3/Workspace.java +++ b/src/com/android/launcher3/Workspace.java @@ -28,7 +28,6 @@ import static com.android.launcher3.LauncherState.OVERVIEW; import static com.android.launcher3.LauncherState.SPRING_LOADED; import static com.android.launcher3.config.FeatureFlags.ADAPTIVE_ICON_WINDOW_ANIM; import static com.android.launcher3.dragndrop.DragLayer.ALPHA_INDEX_OVERLAY; -import static com.android.launcher3.logging.LoggerUtils.newContainerTarget; import static com.android.launcher3.logging.StatsLogManager.LAUNCHER_STATE_HOME; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SWIPELEFT; import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_SWIPERIGHT; @@ -99,7 +98,6 @@ import com.android.launcher3.states.StateAnimationConfig; import com.android.launcher3.touch.WorkspaceTouchListener; import com.android.launcher3.userevent.nano.LauncherLogProto.Action; import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; -import com.android.launcher3.userevent.nano.LauncherLogProto.Target; import com.android.launcher3.util.Executors; import com.android.launcher3.util.IntArray; import com.android.launcher3.util.IntSparseArrayMap; @@ -1506,7 +1504,6 @@ public class Workspace extends PagedView .showForIcon((BubbleTextView) child); if (popupContainer != null) { dragOptions.preDragCondition = popupContainer.createPreDragCondition(); - mLauncher.getUserEventDispatcher().resetElapsedContainerMillis("dragging started"); } } @@ -3272,24 +3269,6 @@ public class Workspace extends PagedView return getContext().getString(R.string.workspace_scroll_format, page + 1, nScreens); } - @Override - public void fillInLogContainerData(ItemInfo childInfo, Target child, - ArrayList parents) { - if (childInfo.container == LauncherSettings.Favorites.CONTAINER_HOTSEAT - || childInfo.container == LauncherSettings.Favorites.CONTAINER_HOTSEAT_PREDICTION) { - getHotseat().fillInLogContainerData(childInfo, child, parents); - return; - } else if (childInfo.container >= 0) { - FolderIcon icon = (FolderIcon) getHomescreenIconByItemId(childInfo.container); - icon.getFolder().fillInLogContainerData(childInfo, child, parents); - return; - } - child.gridX = childInfo.cellX; - child.gridY = childInfo.cellY; - child.pageIndex = getCurrentPage(); - parents.add(newContainerTarget(ContainerType.WORKSPACE)); - } - /** * Used as a workaround to ensure that the AppWidgetService receives the * PACKAGE_ADDED broadcast before updating widgets. diff --git a/src/com/android/launcher3/allapps/AllAppsContainerView.java b/src/com/android/launcher3/allapps/AllAppsContainerView.java index 0684fe0526..1f515669a6 100644 --- a/src/com/android/launcher3/allapps/AllAppsContainerView.java +++ b/src/com/android/launcher3/allapps/AllAppsContainerView.java @@ -17,7 +17,6 @@ package com.android.launcher3.allapps; import static com.android.launcher3.allapps.AllAppsGridAdapter.AdapterItem; import static com.android.launcher3.allapps.AllAppsGridAdapter.AdapterItemWithPayload; -import static com.android.launcher3.logging.LoggerUtils.newContainerTarget; import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_HAS_SHORTCUT_PERMISSION; import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_QUIET_MODE_CHANGE_PERMISSION; import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_QUIET_MODE_ENABLED; @@ -62,8 +61,6 @@ import com.android.launcher3.config.FeatureFlags; import com.android.launcher3.keyboard.FocusedItemDecorator; import com.android.launcher3.model.data.AppInfo; import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; -import com.android.launcher3.userevent.nano.LauncherLogProto.Target; import com.android.launcher3.util.ItemInfoMatcher; import com.android.launcher3.util.MultiValueAlpha; import com.android.launcher3.util.MultiValueAlpha.AlphaProperty; @@ -71,8 +68,6 @@ import com.android.launcher3.util.Themes; import com.android.launcher3.views.RecyclerViewFastScroller; import com.android.launcher3.views.SpringRelativeLayout; -import java.util.ArrayList; - /** * The all apps view container. */ @@ -354,13 +349,6 @@ public class AllAppsContainerView extends SpringRelativeLayout implements DragSo public void onDropCompleted(View target, DragObject d, boolean success) { } - @Override - public void fillInLogContainerData(ItemInfo childInfo, Target child, - ArrayList parents) { - parents.add(newContainerTarget( - getApps().hasFilter() ? ContainerType.SEARCHRESULT : ContainerType.ALLAPPS)); - } - @Override public void setInsets(Rect insets) { mInsets.set(insets); diff --git a/src/com/android/launcher3/allapps/DiscoveryBounce.java b/src/com/android/launcher3/allapps/DiscoveryBounce.java index b4ff5ea19a..14595ca941 100644 --- a/src/com/android/launcher3/allapps/DiscoveryBounce.java +++ b/src/com/android/launcher3/allapps/DiscoveryBounce.java @@ -115,11 +115,6 @@ public class DiscoveryBounce extends AbstractFloatingView { } } - @Override - public void logActionCommand(int command) { - // Since this is on-boarding popup, it is not a user controlled action. - } - @Override protected boolean isOfType(int type) { return (type & TYPE_DISCOVERY_BOUNCE) != 0; diff --git a/src/com/android/launcher3/dragndrop/PinItemDragListener.java b/src/com/android/launcher3/dragndrop/PinItemDragListener.java index bf3aa7f7cb..6104d80676 100644 --- a/src/com/android/launcher3/dragndrop/PinItemDragListener.java +++ b/src/com/android/launcher3/dragndrop/PinItemDragListener.java @@ -16,7 +16,6 @@ package com.android.launcher3.dragndrop; -import static com.android.launcher3.logging.LoggerUtils.newContainerTarget; import android.annotation.TargetApi; import android.appwidget.AppWidgetManager; @@ -33,15 +32,11 @@ import com.android.launcher3.DragSource; import com.android.launcher3.Launcher; import com.android.launcher3.LauncherAppWidgetProviderInfo; import com.android.launcher3.PendingAddItemInfo; -import com.android.launcher3.model.data.ItemInfo; -import com.android.launcher3.userevent.nano.LauncherLogProto; import com.android.launcher3.widget.PendingAddShortcutInfo; import com.android.launcher3.widget.PendingAddWidgetInfo; import com.android.launcher3.widget.PendingItemDragHelper; import com.android.launcher3.widget.WidgetAddFlowHandler; -import java.util.ArrayList; - /** * {@link DragSource} for handling drop from a different window. This object is initialized * in the source window and is passed on to the Launcher activity as an Intent extra. @@ -106,12 +101,6 @@ public class PinItemDragListener extends BaseItemDragListener { return dragHelper; } - @Override - public void fillInLogContainerData(ItemInfo childInfo, LauncherLogProto.Target child, - ArrayList parents) { - parents.add(newContainerTarget(LauncherLogProto.ContainerType.PINITEM)); - } - @Override protected void postCleanup() { super.postCleanup(); diff --git a/src/com/android/launcher3/folder/Folder.java b/src/com/android/launcher3/folder/Folder.java index b91d1c3260..547b42aec5 100644 --- a/src/com/android/launcher3/folder/Folder.java +++ b/src/com/android/launcher3/folder/Folder.java @@ -19,7 +19,6 @@ package com.android.launcher3.folder; import static android.text.TextUtils.isEmpty; import static com.android.launcher3.LauncherAnimUtils.SPRING_LOADED_EXIT_DELAY; -import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_HOTSEAT; import static com.android.launcher3.LauncherState.NORMAL; import static com.android.launcher3.compat.AccessibilityManagerCompat.sendCustomAccessibilityEvent; import static com.android.launcher3.config.FeatureFlags.ALWAYS_USE_HARDWARE_OPTIMIZATION_FOR_FOLDER_ANIMATIONS; @@ -1481,27 +1480,6 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo outRect.right += mScrollAreaOffset; } - @Override - public void fillInLogContainerData(ItemInfo childInfo, LauncherLogProto.Target child, - ArrayList targets) { - child.gridX = childInfo.cellX; - child.gridY = childInfo.cellY; - child.pageIndex = mContent.getCurrentPage(); - - LauncherLogProto.Target target = newContainerTarget(LauncherLogProto.ContainerType.FOLDER); - target.pageIndex = mInfo.screenId; - target.gridX = mInfo.cellX; - target.gridY = mInfo.cellY; - targets.add(target); - - // continue to parent - if (mInfo.container == CONTAINER_HOTSEAT) { - mLauncher.getHotseat().fillInLogContainerData(mInfo, target, targets); - } else { - mLauncher.getWorkspace().fillInLogContainerData(mInfo, target, targets); - } - } - private class OnScrollHintListener implements OnAlarmListener { private final DragObject mDragObject; @@ -1589,17 +1567,6 @@ public class Folder extends AbstractFloatingView implements ClipPathView, DragSo return getOpenView(launcher, TYPE_FOLDER); } - @Override - public void logActionCommand(int command) { - mLauncher.getUserEventDispatcher().logActionCommand( - command, getFolderIcon(), getLogContainerType()); - } - - @Override - public int getLogContainerType() { - return LauncherLogProto.ContainerType.FOLDER; - } - /** * Navigation bar back key or hardware input back key has been issued. */ diff --git a/src/com/android/launcher3/logging/UserEventDispatcher.java b/src/com/android/launcher3/logging/UserEventDispatcher.java index 31a81b8164..a40cc263db 100644 --- a/src/com/android/launcher3/logging/UserEventDispatcher.java +++ b/src/com/android/launcher3/logging/UserEventDispatcher.java @@ -19,26 +19,21 @@ package com.android.launcher3.logging; import static com.android.launcher3.logging.LoggerUtils.newAction; import static com.android.launcher3.logging.LoggerUtils.newCommandAction; import static com.android.launcher3.logging.LoggerUtils.newContainerTarget; -import static com.android.launcher3.logging.LoggerUtils.newControlTarget; import static com.android.launcher3.logging.LoggerUtils.newDropTarget; import static com.android.launcher3.logging.LoggerUtils.newItemTarget; import static com.android.launcher3.logging.LoggerUtils.newLauncherEvent; import static com.android.launcher3.logging.LoggerUtils.newTarget; import static com.android.launcher3.logging.LoggerUtils.newTouchAction; -import static com.android.launcher3.userevent.nano.LauncherLogProto.ControlType; import static com.android.launcher3.userevent.nano.LauncherLogProto.ItemType; import static com.android.launcher3.userevent.nano.LauncherLogProto.TipType; import static java.util.Optional.ofNullable; -import android.app.PendingIntent; import android.content.ComponentName; import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; -import android.os.Process; import android.os.SystemClock; -import android.os.UserHandle; import android.util.Log; import android.view.View; @@ -54,7 +49,6 @@ import com.android.launcher3.userevent.LauncherLogProto; import com.android.launcher3.userevent.nano.LauncherLogProto.Action; import com.android.launcher3.userevent.nano.LauncherLogProto.LauncherEvent; import com.android.launcher3.userevent.nano.LauncherLogProto.Target; -import com.android.launcher3.util.ComponentKey; import com.android.launcher3.util.InstantAppResolver; import com.android.launcher3.util.LogConfig; import com.android.launcher3.util.ResourceBasedOverride; @@ -101,7 +95,7 @@ public class UserEventDispatcher implements ResourceBasedOverride { * * @return whether container data was added. */ - public boolean fillLogContainer(@Nullable View v, Target child, + private boolean fillLogContainer(@Nullable View v, Target child, @Nullable ArrayList targets) { LogContainerProvider firstParent = StatsLogUtils.getLaunchProviderRecursive(v); if (v == null || !(v.getTag() instanceof ItemInfo) || firstParent == null) { @@ -125,55 +119,6 @@ public class UserEventDispatcher implements ResourceBasedOverride { private boolean mAppOrTaskLaunch; private boolean mPreviousHomeGesture; - // APP_ICON SHORTCUT WIDGET - // -------------------------------------------------------------- - // packageNameHash required optional required - // componentNameHash required required - // intentHash required - // -------------------------------------------------------------- - - @Deprecated - public void logAppLaunch(View v, Intent intent, @Nullable UserHandle userHandle) { - Target itemTarget = newItemTarget(v, mInstantAppResolver); - Action action = newTouchAction(Action.Touch.TAP); - ArrayList targets = makeTargetsList(itemTarget); - if (fillLogContainer(v, itemTarget, targets)) { - onFillInLogContainerData((ItemInfo) v.getTag(), itemTarget, targets); - fillIntentInfo(itemTarget, intent, userHandle); - } - LauncherEvent event = newLauncherEvent(action, targets); - dispatchUserEvent(event, intent); - mAppOrTaskLaunch = true; - } - - /** - * Placeholder method. - */ - public void logActionTip(int actionType, int viewType) { - } - - @Deprecated - public void logTaskLaunchOrDismiss(int action, int direction, int taskIndex, - ComponentKey componentKey) { - LauncherEvent event = newLauncherEvent(newTouchAction(action), // TAP or SWIPE or FLING - newTarget(Target.Type.ITEM)); - if (action == Action.Touch.SWIPE || action == Action.Touch.FLING) { - // Direction DOWN means the task was launched, UP means it was dismissed. - event.action.dir = direction; - } - event.srcTarget[0].itemType = ItemType.TASK; - event.srcTarget[0].pageIndex = taskIndex; - fillComponentInfo(event.srcTarget[0], componentKey.componentName); - dispatchUserEvent(event, null); - mAppOrTaskLaunch = true; - } - - protected void fillIntentInfo(Target target, Intent intent, @Nullable UserHandle userHandle) { - target.intentHash = intent.hashCode(); - target.isWorkApp = userHandle != null && !userHandle.equals(Process.myUserHandle()); - fillComponentInfo(target, intent.getComponent()); - } - private void fillComponentInfo(Target target, ComponentName cn) { if (cn != null) { target.packageNameHash = (mUuidStr + cn.getPackageName()).hashCode(); @@ -181,22 +126,6 @@ public class UserEventDispatcher implements ResourceBasedOverride { } } - public void logNotificationLaunch(View v, PendingIntent intent) { - LauncherEvent event = newLauncherEvent(newTouchAction(Action.Touch.TAP), - newItemTarget(v, mInstantAppResolver), newTarget(Target.Type.CONTAINER)); - Target itemTarget = newItemTarget(v, mInstantAppResolver); - ArrayList targets = makeTargetsList(itemTarget); - - if (fillLogContainer(v, itemTarget, targets)) { - itemTarget.packageNameHash = (mUuidStr + intent.getCreatorPackage()).hashCode(); - } - dispatchUserEvent(event, null); - } - - public void logActionCommand(int command, Target srcTarget) { - logActionCommand(command, srcTarget, null); - } - public void logActionCommand(int command, int srcContainerType, int dstContainerType) { logActionCommand(command, newContainerTarget(srcContainerType), dstContainerType >= 0 ? newContainerTarget(dstContainerType) : null); @@ -227,25 +156,6 @@ public class UserEventDispatcher implements ResourceBasedOverride { dispatchUserEvent(event, null); } - /** - * TODO: Make this function work when a container view is passed as the 2nd param. - */ - public void logActionCommand(int command, View itemView, int srcContainerType) { - LauncherEvent event = newLauncherEvent(newCommandAction(command), - newItemTarget(itemView, mInstantAppResolver), newTarget(Target.Type.CONTAINER)); - - Target itemTarget = newItemTarget(itemView, mInstantAppResolver); - ArrayList targets = makeTargetsList(itemTarget); - - if (fillLogContainer(itemView, itemTarget, targets)) { - // TODO: Remove the following two lines once fillInLogContainerData can take in a - // container view. - itemTarget.type = Target.Type.CONTAINER; - itemTarget.containerType = srcContainerType; - } - dispatchUserEvent(event, null); - } - public void logActionOnControl(int action, int controlType) { logActionOnControl(action, controlType, null); } @@ -332,7 +242,6 @@ public class UserEventDispatcher implements ResourceBasedOverride { event.srcTarget[0].spanX = downX; event.srcTarget[0].spanY = downY; dispatchUserEvent(event, null); - resetElapsedContainerMillis("state changed"); } public void logActionOnItem(int action, int dir, int itemType) { @@ -386,7 +295,6 @@ public class UserEventDispatcher implements ResourceBasedOverride { ArrayList targets = makeTargetsList(child); fillLogContainer(icon, child, targets); dispatchUserEvent(newLauncherEvent(newTouchAction(Action.Touch.TAP), targets), null); - resetElapsedContainerMillis("deep shortcut open"); } public void logDragNDrop(DropTarget.DragObject dragObj, View dropTargetAsView) { @@ -397,7 +305,7 @@ public class UserEventDispatcher implements ResourceBasedOverride { Target destChild = newItemTarget(dragObj.originalDragInfo, mInstantAppResolver); ArrayList destTargets = makeTargetsList(destChild); - dragObj.dragSource.fillInLogContainerData(dragObj.originalDragInfo, srcChild, srcTargets); + //dragObj.dragSource.fillInLogContainerData(dragObj.originalDragInfo, srcChild, srcTargets); if (dropTargetAsView instanceof LogContainerProvider) { ((LogContainerProvider) dropTargetAsView).fillInLogContainerData(dragObj.dragInfo, destChild, destTargets); @@ -414,35 +322,6 @@ public class UserEventDispatcher implements ResourceBasedOverride { dispatchUserEvent(event, null); } - public void logActionBack(boolean completed, int downX, int downY, boolean isButton, - boolean gestureSwipeLeft, int containerType) { - int actionTouch = isButton ? Action.Touch.TAP : Action.Touch.SWIPE; - Action action = newCommandAction(actionTouch); - action.command = Action.Command.BACK; - action.dir = isButton ? Action.Direction.NONE : - gestureSwipeLeft ? Action.Direction.LEFT : Action.Direction.RIGHT; - Target target = newControlTarget(isButton ? ControlType.BACK_BUTTON : - ControlType.BACK_GESTURE); - target.spanX = downX; - target.spanY = downY; - target.cardinality = completed ? 1 : 0; - LauncherEvent event = newLauncherEvent(action, target, newContainerTarget(containerType)); - - dispatchUserEvent(event, null); - } - - /** - * Currently logs following containers: workspace, allapps, widget tray. - */ - public final void resetElapsedContainerMillis(String reason) { - mElapsedContainerMillis = SystemClock.uptimeMillis(); - if (!IS_VERBOSE) { - return; - } - Log.d(TAG, "resetElapsedContainerMillis reason=" + reason); - - } - public final void startSession() { mSessionStarted = true; mElapsedSessionMillis = SystemClock.uptimeMillis(); diff --git a/src/com/android/launcher3/notification/NotificationInfo.java b/src/com/android/launcher3/notification/NotificationInfo.java index 835f72d5be..80eeb22747 100644 --- a/src/com/android/launcher3/notification/NotificationInfo.java +++ b/src/com/android/launcher3/notification/NotificationInfo.java @@ -106,7 +106,6 @@ public class NotificationInfo implements View.OnClickListener { view, 0, 0, view.getWidth(), view.getHeight()).toBundle(); try { intent.send(null, 0, null, null, null, null, activityOptions); - launcher.getUserEventDispatcher().logNotificationLaunch(view, intent); launcher.getStatsLogManager().logger().withItemInfo(mItemInfo) .log(LAUNCHER_NOTIFICATION_LAUNCH_TAP); } catch (PendingIntent.CanceledException e) { diff --git a/src/com/android/launcher3/popup/PopupContainerWithArrow.java b/src/com/android/launcher3/popup/PopupContainerWithArrow.java index 896fb186d4..26b32b8195 100644 --- a/src/com/android/launcher3/popup/PopupContainerWithArrow.java +++ b/src/com/android/launcher3/popup/PopupContainerWithArrow.java @@ -20,12 +20,9 @@ import static com.android.launcher3.LauncherSettings.Favorites.CONTAINER_SHORTCU import static com.android.launcher3.Utilities.squaredHypot; import static com.android.launcher3.Utilities.squaredTouchSlop; import static com.android.launcher3.logging.LoggerUtils.newContainerTarget; -import static com.android.launcher3.notification.NotificationMainView.NOTIFICATION_ITEM_INFO; import static com.android.launcher3.popup.PopupPopulator.MAX_SHORTCUTS; import static com.android.launcher3.popup.PopupPopulator.MAX_SHORTCUTS_IF_NOTIFICATIONS; import static com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; -import static com.android.launcher3.userevent.nano.LauncherLogProto.ItemType; -import static com.android.launcher3.userevent.nano.LauncherLogProto.Target; import static com.android.launcher3.util.Executors.MODEL_EXECUTOR; import android.animation.AnimatorSet; @@ -147,17 +144,6 @@ public class PopupContainerWithArrow extends Arr return (type & TYPE_ACTION_POPUP) != 0; } - @Override - public void logActionCommand(int command) { - mLauncher.getUserEventDispatcher().logActionCommand( - command, mOriginalIcon, getLogContainerType()); - } - - @Override - public int getLogContainerType() { - return ContainerType.DEEPSHORTCUTS; - } - public OnClickListener getItemClickListener() { return (view) -> { mLauncher.getItemOnClickListener().onClick(view); @@ -495,18 +481,6 @@ public class PopupContainerWithArrow extends Arr } } - @Override - public void fillInLogContainerData(ItemInfo childInfo, Target child, - ArrayList parents) { - if (childInfo == NOTIFICATION_ITEM_INFO) { - child.itemType = ItemType.NOTIFICATION; - } else { - child.itemType = ItemType.DEEPSHORTCUT; - child.rank = childInfo.rank; - } - parents.add(newContainerTarget(ContainerType.DEEPSHORTCUTS)); - } - @Override protected void onCreateCloseAnimation(AnimatorSet anim) { // Animate original icon's text back in. diff --git a/src/com/android/launcher3/views/ArrowTipView.java b/src/com/android/launcher3/views/ArrowTipView.java index b4a6b141ce..1f12a2f8c8 100644 --- a/src/com/android/launcher3/views/ArrowTipView.java +++ b/src/com/android/launcher3/views/ArrowTipView.java @@ -86,10 +86,6 @@ public class ArrowTipView extends AbstractFloatingView { } } - @Override - public void logActionCommand(int command) { - } - @Override protected boolean isOfType(int type) { return (type & TYPE_ON_BOARD_POPUP) != 0; diff --git a/src/com/android/launcher3/views/FloatingSurfaceView.java b/src/com/android/launcher3/views/FloatingSurfaceView.java index 9582232279..011f6de8e2 100644 --- a/src/com/android/launcher3/views/FloatingSurfaceView.java +++ b/src/com/android/launcher3/views/FloatingSurfaceView.java @@ -121,9 +121,6 @@ public class FloatingSurfaceView extends AbstractFloatingView implements launcher.getDragLayer().addView(view); } - @Override - public void logActionCommand(int command) { } - @Override protected boolean isOfType(int type) { return (type & TYPE_ICON_SURFACE) != 0; diff --git a/src/com/android/launcher3/views/HeroSearchResultView.java b/src/com/android/launcher3/views/HeroSearchResultView.java index 10f3c41f35..7b2df80b32 100644 --- a/src/com/android/launcher3/views/HeroSearchResultView.java +++ b/src/com/android/launcher3/views/HeroSearchResultView.java @@ -40,9 +40,7 @@ import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.model.data.WorkspaceItemInfo; import com.android.launcher3.shortcuts.ShortcutDragPreviewProvider; import com.android.launcher3.touch.ItemLongClickListener; -import com.android.launcher3.userevent.nano.LauncherLogProto; -import java.util.ArrayList; import java.util.List; /** @@ -118,12 +116,6 @@ public class HeroSearchResultView extends LinearLayout implements DragSource, mBubbleTextView.setIconVisible(true); } - @Override - public void fillInLogContainerData(ItemInfo childInfo, LauncherLogProto.Target child, - ArrayList parents) { - - } - private void setWillDrawIcon(boolean willDraw) { mIconView.setVisibility(willDraw ? View.VISIBLE : View.INVISIBLE); } diff --git a/src/com/android/launcher3/views/ListenerView.java b/src/com/android/launcher3/views/ListenerView.java index 3ef778b575..6e3f0ce690 100644 --- a/src/com/android/launcher3/views/ListenerView.java +++ b/src/com/android/launcher3/views/ListenerView.java @@ -84,11 +84,6 @@ public class ListenerView extends AbstractFloatingView { mIsOpen = false; } - @Override - public void logActionCommand(int command) { - // Users do not interact with FloatingIconView, so there is nothing to log here. - } - @Override protected boolean isOfType(int type) { return (type & TYPE_LISTENER) != 0; diff --git a/src/com/android/launcher3/views/OptionsPopupView.java b/src/com/android/launcher3/views/OptionsPopupView.java index 9ad2331112..3ec20d57a1 100644 --- a/src/com/android/launcher3/views/OptionsPopupView.java +++ b/src/com/android/launcher3/views/OptionsPopupView.java @@ -107,11 +107,6 @@ public class OptionsPopupView extends ArrowPopup return true; } - @Override - public void logActionCommand(int command) { - // TODO: - } - @Override protected boolean isOfType(int type) { return (type & TYPE_OPTIONS_POPUP) != 0; diff --git a/src/com/android/launcher3/views/Snackbar.java b/src/com/android/launcher3/views/Snackbar.java index 513ce59a62..49fcd2ebde 100644 --- a/src/com/android/launcher3/views/Snackbar.java +++ b/src/com/android/launcher3/views/Snackbar.java @@ -166,11 +166,6 @@ public class Snackbar extends AbstractFloatingView { } } - @Override - public void logActionCommand(int command) { - // TODO - } - @Override protected boolean isOfType(int type) { return (type & TYPE_SNACKBAR) != 0; diff --git a/src/com/android/launcher3/views/WorkEduView.java b/src/com/android/launcher3/views/WorkEduView.java index d35a38fba8..d6737db725 100644 --- a/src/com/android/launcher3/views/WorkEduView.java +++ b/src/com/android/launcher3/views/WorkEduView.java @@ -38,7 +38,6 @@ import com.android.launcher3.allapps.AllAppsPagedView; import com.android.launcher3.anim.AnimationSuccessListener; import com.android.launcher3.anim.Interpolators; import com.android.launcher3.statemanager.StateManager.StateListener; -import com.android.launcher3.userevent.nano.LauncherLogProto; /** * On boarding flow for users right after setting up work profile @@ -88,16 +87,6 @@ public class WorkEduView extends AbstractSlideInView mLauncher.getStateManager().removeStateListener(this); } - @Override - public void logActionCommand(int command) { - // Since this is on-boarding popup, it is not a user controlled action. - } - - @Override - public int getLogContainerType() { - return LauncherLogProto.ContainerType.TIP; - } - @Override protected boolean isOfType(int type) { return (type & TYPE_ON_BOARD_POPUP) != 0; diff --git a/src/com/android/launcher3/widget/BaseWidgetSheet.java b/src/com/android/launcher3/widget/BaseWidgetSheet.java index 3e5113a231..01af96cb33 100644 --- a/src/com/android/launcher3/widget/BaseWidgetSheet.java +++ b/src/com/android/launcher3/widget/BaseWidgetSheet.java @@ -16,7 +16,6 @@ package com.android.launcher3.widget; import static com.android.launcher3.icons.GraphicsUtils.setColorAlphaBound; -import static com.android.launcher3.logging.LoggerUtils.newContainerTarget; import android.content.Context; import android.graphics.Point; @@ -31,20 +30,15 @@ import com.android.launcher3.DropTarget.DragObject; import com.android.launcher3.R; import com.android.launcher3.Utilities; import com.android.launcher3.dragndrop.DragOptions; -import com.android.launcher3.model.data.ItemInfo; import com.android.launcher3.popup.PopupDataProvider; import com.android.launcher3.testing.TestLogging; import com.android.launcher3.testing.TestProtocol; import com.android.launcher3.touch.ItemLongClickListener; import com.android.launcher3.uioverrides.WallpaperColorInfo; -import com.android.launcher3.userevent.nano.LauncherLogProto.ContainerType; -import com.android.launcher3.userevent.nano.LauncherLogProto.Target; import com.android.launcher3.util.SystemUiController; import com.android.launcher3.util.Themes; import com.android.launcher3.views.AbstractSlideInView; -import java.util.ArrayList; - /** * Base class for various widgets popup */ @@ -149,28 +143,6 @@ abstract class BaseWidgetSheet extends AbstractSlideInView isSheetDark ? SystemUiController.FLAG_DARK_NAV : SystemUiController.FLAG_LIGHT_NAV); } - @Override - public void fillInLogContainerData(ItemInfo childInfo, Target child, - ArrayList parents) { - Target target = newContainerTarget(ContainerType.WIDGETS); - target.cardinality = getElementsRowCount(); - parents.add(target); - } - - @Override - public final void logActionCommand(int command) { - Target target = newContainerTarget(getLogContainerType()); - target.cardinality = getElementsRowCount(); - mLauncher.getUserEventDispatcher().logActionCommand(command, target); - } - - @Override - public int getLogContainerType() { - return ContainerType.WIDGETS; - } - - protected abstract int getElementsRowCount(); - protected SystemUiController getSystemUiController() { return mLauncher.getSystemUiController(); } diff --git a/src/com/android/launcher3/widget/WidgetsBottomSheet.java b/src/com/android/launcher3/widget/WidgetsBottomSheet.java index 30be7a673d..3585a1814b 100644 --- a/src/com/android/launcher3/widget/WidgetsBottomSheet.java +++ b/src/com/android/launcher3/widget/WidgetsBottomSheet.java @@ -179,11 +179,6 @@ public class WidgetsBottomSheet extends BaseWidgetSheet implements Insettable { setPadding(leftInset, getPaddingTop(), rightInset, bottomInset); } - @Override - protected int getElementsRowCount() { - return 1; - } - @Override protected Pair getAccessibilityTarget() { return Pair.create(findViewById(R.id.title), getContext().getString( diff --git a/src/com/android/launcher3/widget/WidgetsFullSheet.java b/src/com/android/launcher3/widget/WidgetsFullSheet.java index 68a3ec51ee..4c8c339998 100644 --- a/src/com/android/launcher3/widget/WidgetsFullSheet.java +++ b/src/com/android/launcher3/widget/WidgetsFullSheet.java @@ -242,11 +242,6 @@ public class WidgetsFullSheet extends BaseWidgetSheet return launcher.findViewById(R.id.widgets_list_view); } - @Override - protected int getElementsRowCount() { - return mAdapter.getItemCount(); - } - @Override public void addHintCloseAnim( float distanceToMove, Interpolator interpolator, PendingAnimation target) { diff --git a/src_plugins/com/android/systemui/plugins/UserEventPlugin.java b/src_plugins/com/android/systemui/plugins/UserEventPlugin.java deleted file mode 100644 index 0e3664ae3f..0000000000 --- a/src_plugins/com/android/systemui/plugins/UserEventPlugin.java +++ /dev/null @@ -1,34 +0,0 @@ -/* - * Copyright (C) 2019 The Android Open Source Project - * - * Licensed under the Apache License, Version 2.0 (the "License"); - * you may not use this file except in compliance with the License. - * You may obtain a copy of the License at - * - * http://www.apache.org/licenses/LICENSE-2.0 - * - * Unless required by applicable law or agreed to in writing, software - * distributed under the License is distributed on an "AS IS" BASIS, - * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. - * See the License for the specific language governing permissions and - * limitations under the License. - */ - -package com.android.systemui.plugins; - -import com.android.systemui.plugins.annotations.ProvidesInterface; - -/** - * Implement this plugin interface to access user event log on the device for prototype purpose. - * NOTE: plugin is for internal prototype only and is not visible in production environment. - */ -@ProvidesInterface(action = UserEventPlugin.ACTION, version = UserEventPlugin.VERSION) -public interface UserEventPlugin extends Plugin { - String ACTION = "com.android.launcher3.action.PLUGIN_USER_EVENT_LOG"; - int VERSION = 1; - - /** - * Callback to be triggered whenever an user event occurs. - */ - void onUserEvent(Object event); -}