Add UI metrics for granting admin rights from User Switcher
Bug: 260697326
Test: manual
Change-Id: I5515264fa2e2b21407194ae7cab3c4691df5fc55
diff --git a/packages/SystemUI/src/com/android/systemui/user/CreateUserActivity.java b/packages/SystemUI/src/com/android/systemui/user/CreateUserActivity.java
index c570ec8..977cf0e 100644
--- a/packages/SystemUI/src/com/android/systemui/user/CreateUserActivity.java
+++ b/packages/SystemUI/src/com/android/systemui/user/CreateUserActivity.java
@@ -31,10 +31,12 @@
import androidx.annotation.NonNull;
import androidx.annotation.Nullable;
+import com.android.internal.logging.UiEventLogger;
import com.android.settingslib.users.EditUserInfoController;
import com.android.settingslib.users.GrantAdminDialogController;
import com.android.systemui.R;
import com.android.systemui.plugins.ActivityStarter;
+import com.android.systemui.user.utils.MultiUserActionsEvent;
import javax.inject.Inject;
@@ -60,7 +62,7 @@
private final EditUserInfoController mEditUserInfoController;
private final IActivityManager mActivityManager;
private final ActivityStarter mActivityStarter;
-
+ private final UiEventLogger mUiEventLogger;
private Dialog mGrantAdminDialog;
private Dialog mSetupUserDialog;
private final OnBackInvokedCallback mBackCallback = this::onBackInvoked;
@@ -68,11 +70,12 @@
@Inject
public CreateUserActivity(UserCreator userCreator,
EditUserInfoController editUserInfoController, IActivityManager activityManager,
- ActivityStarter activityStarter) {
+ ActivityStarter activityStarter, UiEventLogger uiEventLogger) {
mUserCreator = userCreator;
mEditUserInfoController = editUserInfoController;
mActivityManager = activityManager;
mActivityStarter = activityStarter;
+ mUiEventLogger = uiEventLogger;
}
@Override
@@ -128,12 +131,22 @@
);
}
+ /**
+ * Returns dialog that allows to grant user admin rights.
+ */
private Dialog buildGrantAdminDialog() {
return new GrantAdminDialogController().createDialog(
this,
(grantAdminRights) -> {
mGrantAdminDialog.dismiss();
mGrantAdminRights = grantAdminRights;
+ if (mGrantAdminRights) {
+ mUiEventLogger.log(MultiUserActionsEvent
+ .GRANT_ADMIN_FROM_USER_SWITCHER_CREATION_DIALOG);
+ } else {
+ mUiEventLogger.log(MultiUserActionsEvent
+ .NOT_GRANT_ADMIN_FROM_USER_SWITCHER_CREATION_DIALOG);
+ }
mSetupUserDialog = createDialog();
mSetupUserDialog.show();
},
diff --git a/packages/SystemUI/src/com/android/systemui/user/utils/MultiUserActionsEvent.kt b/packages/SystemUI/src/com/android/systemui/user/utils/MultiUserActionsEvent.kt
index ec79b6d..c1c2419 100644
--- a/packages/SystemUI/src/com/android/systemui/user/utils/MultiUserActionsEvent.kt
+++ b/packages/SystemUI/src/com/android/systemui/user/utils/MultiUserActionsEvent.kt
@@ -29,7 +29,11 @@
@UiEvent(doc = "Switch to Guest User tap from User Switcher.")
SWITCH_TO_GUEST_FROM_USER_SWITCHER(1267),
@UiEvent(doc = "Switch to Restricted User tap from User Switcher.")
- SWITCH_TO_RESTRICTED_USER_FROM_USER_SWITCHER(1268);
+ SWITCH_TO_RESTRICTED_USER_FROM_USER_SWITCHER(1268),
+ @UiEvent(doc = "Grant admin privileges to user on creation from User Switcher.")
+ GRANT_ADMIN_FROM_USER_SWITCHER_CREATION_DIALOG(1278),
+ @UiEvent(doc = "Not grant admin privileges to user on creation from User Switcher")
+ NOT_GRANT_ADMIN_FROM_USER_SWITCHER_CREATION_DIALOG(1279);
override fun getId(): Int {
return value
diff --git a/packages/SystemUI/tests/src/com/android/systemui/user/CreateUserActivityTest.kt b/packages/SystemUI/tests/src/com/android/systemui/user/CreateUserActivityTest.kt
index 51afbcb..2b86cfd 100644
--- a/packages/SystemUI/tests/src/com/android/systemui/user/CreateUserActivityTest.kt
+++ b/packages/SystemUI/tests/src/com/android/systemui/user/CreateUserActivityTest.kt
@@ -38,6 +38,7 @@
},
/* activityManager = */ mock(),
/* activityStarter = */ mock(),
+ mock(),
)
@get:Rule val activityRule = ActivityScenarioRule(CreateUserActivityTestable::class.java)