Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 70d8ecbc authored by Holly Sun's avatar Holly Sun
Browse files

[PS] Log event for private space add button click.

Bug: 320702146
Test: manual
Flag: ACONFIG com.android.launcher3.private_space_app_installer_button teamfood
Change-Id: I2ea6b215d4bce93e682c260242a6c3a7cb31922f
parent 9de29f21
Loading
Loading
Loading
Loading
+2 −0
Original line number Diff line number Diff line
@@ -21,6 +21,7 @@ import static com.android.launcher3.allapps.BaseAllAppsAdapter.VIEW_TYPE_ICON;
import static com.android.launcher3.allapps.BaseAllAppsAdapter.VIEW_TYPE_PRIVATE_SPACE_HEADER;
import static com.android.launcher3.allapps.SectionDecorationInfo.ROUND_NOTHING;
import static com.android.launcher3.model.BgDataModel.Callbacks.FLAG_PRIVATE_PROFILE_QUIET_MODE_ENABLED;
import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_PRIVATE_SPACE_INSTALL_APP;
import static com.android.launcher3.util.Executors.MAIN_EXECUTOR;
import static com.android.launcher3.util.Executors.UI_HELPER_EXECUTOR;
import static com.android.launcher3.util.SettingsCache.PRIVATE_SPACE_HIDE_WHEN_LOCKED_URI;
@@ -105,6 +106,7 @@ public class PrivateProfileManager extends UserProfileManager {
        itemInfo.bitmap = bitmapInfo;
        itemInfo.contentDescription = context.getResources().getString(
                com.android.launcher3.R.string.ps_add_button_content_description);
        itemInfo.runtimeStatusFlags |= FLAG_PRIVATE_SPACE_INSTALL_APP;

        BaseAllAppsAdapter.AdapterItem item = new BaseAllAppsAdapter.AdapterItem(VIEW_TYPE_ICON);
        item.itemInfo = itemInfo;
+3 −0
Original line number Diff line number Diff line
@@ -704,6 +704,9 @@ public class StatsLogManager implements ResourceBasedOverride {
        @UiEvent(doc = "User tapped on install to private space system shortcut.")
        LAUNCHER_PRIVATE_SPACE_INSTALL_SYSTEM_SHORTCUT_TAP(1565),

        @UiEvent(doc = "User tapped private space install app button.")
        LAUNCHER_PRIVATE_SPACE_INSTALL_APP_BUTTON_TAP(1605),

        @UiEvent(doc = "User attempted to create split screen with a widget")
        LAUNCHER_SPLIT_WIDGET_ATTEMPT(1604)

+5 −0
Original line number Diff line number Diff line
@@ -121,6 +121,11 @@ public abstract class ItemInfoWithIcon extends ItemInfo {
     */
    public static final int FLAG_ARCHIVED = 1 << 14;

    /**
     * Flag indicating it's the Private Space Install App icon.
     */
    public static final int FLAG_PRIVATE_SPACE_INSTALL_APP = 1 << 15;

    /**
     * Status associated with the system state of the underlying item. This is calculated every
     * time a new info is created and not persisted on the disk.
+7 −0
Original line number Diff line number Diff line
@@ -19,6 +19,7 @@ import static com.android.launcher3.Flags.enableSupportForArchiving;
import static com.android.launcher3.LauncherConstants.ActivityCodes.REQUEST_BIND_PENDING_APPWIDGET;
import static com.android.launcher3.LauncherConstants.ActivityCodes.REQUEST_RECONFIGURE_APPWIDGET;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_FOLDER_OPEN;
import static com.android.launcher3.logging.StatsLogManager.LauncherEvent.LAUNCHER_PRIVATE_SPACE_INSTALL_APP_BUTTON_TAP;
import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_DISABLED_BY_PUBLISHER;
import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_DISABLED_LOCKED_USER;
import static com.android.launcher3.model.data.ItemInfoWithIcon.FLAG_DISABLED_QUIET_USER;
@@ -352,6 +353,12 @@ public class ItemClickHandler {
                    appInfo.getTargetComponent().getPackageName(), Process.myUserHandle());
        } else {
            intent = item.getIntent();
            if (item instanceof AppInfo
                    && (((ItemInfoWithIcon) item).runtimeStatusFlags
                    & ItemInfoWithIcon.FLAG_PRIVATE_SPACE_INSTALL_APP) != 0) {
                launcher.getStatsLogManager().logger().log(
                        LAUNCHER_PRIVATE_SPACE_INSTALL_APP_BUTTON_TAP);
            }
        }
        if (intent == null) {
            throw new IllegalArgumentException("Input must have a valid intent");