Migrates full screen user switcher to use CarUserManagerHelper instead of
deprecated UserManagerHelper.
Change-Id: I2b9702bf2f2a19c4f0927dc80544fa804ae7d4cb
Fixes: 80150596
Test: emulator
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java b/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java
index 6920d10..6c9ca70 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/car/CarStatusBar.java
@@ -18,6 +18,7 @@
import android.app.ActivityManager;
import android.app.ActivityTaskManager;
+import android.car.user.CarUserManagerHelper;
import android.graphics.PixelFormat;
import android.graphics.drawable.Drawable;
import android.util.Log;
@@ -28,7 +29,6 @@
import android.view.WindowManager;
import com.android.keyguard.KeyguardUpdateMonitor;
-import com.android.settingslib.users.UserManagerHelper;
import com.android.systemui.BatteryMeterView;
import com.android.systemui.Dependency;
import com.android.systemui.Prefs;
@@ -506,7 +506,7 @@
@Override
public void updateKeyguardState(boolean goingToFullShade, boolean fromShadeLocked) {
super.updateKeyguardState(goingToFullShade, fromShadeLocked);
- UserManagerHelper helper = new UserManagerHelper(mContext);
+ CarUserManagerHelper helper = new CarUserManagerHelper(mContext);
if (!helper.isHeadlessSystemUser()) {
showUserSwitcher();
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/car/FullscreenUserSwitcher.java b/packages/SystemUI/src/com/android/systemui/statusbar/car/FullscreenUserSwitcher.java
index 506d697..67a76fd 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/car/FullscreenUserSwitcher.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/car/FullscreenUserSwitcher.java
@@ -18,15 +18,13 @@
import android.animation.Animator;
import android.animation.AnimatorListenerAdapter;
+import android.car.user.CarUserManagerHelper;
import android.content.Context;
-import android.content.pm.UserInfo;
-import android.util.Log;
import android.view.View;
import android.view.ViewStub;
import androidx.recyclerview.widget.GridLayoutManager;
-import com.android.settingslib.users.UserManagerHelper;
import com.android.systemui.R;
import com.android.systemui.statusbar.phone.StatusBar;
@@ -39,7 +37,7 @@
private final UserGridRecyclerView mUserGridView;
private final int mShortAnimDuration;
private final StatusBar mStatusBar;
- private final UserManagerHelper mUserManagerHelper;
+ private final CarUserManagerHelper mCarUserManagerHelper;
private boolean mShowing;
public FullscreenUserSwitcher(StatusBar statusBar, ViewStub containerStub, Context context) {
@@ -53,14 +51,14 @@
mUserGridView.buildAdapter();
mUserGridView.setUserSelectionListener(this::onUserSelected);
- mUserManagerHelper = new UserManagerHelper(context);
+ mCarUserManagerHelper = new CarUserManagerHelper(context);
mShortAnimDuration = mContainer.getResources()
.getInteger(android.R.integer.config_shortAnimTime);
}
public void show() {
- if (mUserManagerHelper.isHeadlessSystemUser()) {
+ if (mCarUserManagerHelper.isHeadlessSystemUser()) {
showUserGrid();
}
if (mShowing) {
@@ -81,12 +79,12 @@
}
private void onUserSelected(UserGridRecyclerView.UserRecord record) {
- if (mUserManagerHelper.isHeadlessSystemUser()) {
+ if (mCarUserManagerHelper.isHeadlessSystemUser()) {
hideUserGrid();
}
if (record.mIsForeground || (record.mIsStartGuestSession
- && mUserManagerHelper.foregroundUserIsGuestUser())) {
+ && mCarUserManagerHelper.isForegroundUserGuest())) {
dismissKeyguard();
return;
}
diff --git a/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridRecyclerView.java b/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridRecyclerView.java
index ee10d34..b376c00 100644
--- a/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridRecyclerView.java
+++ b/packages/SystemUI/src/com/android/systemui/statusbar/car/UserGridRecyclerView.java
@@ -22,6 +22,7 @@
import android.app.AlertDialog;
import android.app.AlertDialog.Builder;
import android.app.Dialog;
+import android.car.user.CarUserManagerHelper;
import android.content.Context;
import android.content.DialogInterface;
import android.content.pm.UserInfo;
@@ -42,7 +43,6 @@
import androidx.recyclerview.widget.RecyclerView;
import com.android.internal.util.UserIcons;
-import com.android.settingslib.users.UserManagerHelper;
import com.android.systemui.R;
import com.android.systemui.statusbar.phone.SystemUIDialog;
@@ -54,16 +54,16 @@
* One of the uses of this is for the lock screen in auto.
*/
public class UserGridRecyclerView extends PagedListView implements
- UserManagerHelper.OnUsersUpdateListener {
+ CarUserManagerHelper.OnUsersUpdateListener {
private UserSelectionListener mUserSelectionListener;
private UserAdapter mAdapter;
- private UserManagerHelper mUserManagerHelper;
+ private CarUserManagerHelper mCarUserManagerHelper;
private Context mContext;
public UserGridRecyclerView(Context context, AttributeSet attrs) {
super(context, attrs);
mContext = context;
- mUserManagerHelper = new UserManagerHelper(mContext);
+ mCarUserManagerHelper = new CarUserManagerHelper(mContext);
}
/**
@@ -72,7 +72,7 @@
@Override
public void onFinishInflate() {
super.onFinishInflate();
- mUserManagerHelper.registerOnUsersUpdateListener(this);
+ mCarUserManagerHelper.registerOnUsersUpdateListener(this);
}
/**
@@ -81,7 +81,7 @@
@Override
public void onDetachedFromWindow() {
super.onDetachedFromWindow();
- mUserManagerHelper.unregisterOnUsersUpdateListener();
+ mCarUserManagerHelper.unregisterOnUsersUpdateListener(this);
}
/**
@@ -90,7 +90,7 @@
* @return the adapter
*/
public void buildAdapter() {
- List<UserRecord> userRecords = createUserRecords(mUserManagerHelper
+ List<UserRecord> userRecords = createUserRecords(mCarUserManagerHelper
.getAllUsers());
mAdapter = new UserAdapter(mContext, userRecords);
super.setAdapter(mAdapter);
@@ -103,7 +103,9 @@
// Don't display guests in the switcher.
continue;
}
- boolean isForeground = mUserManagerHelper.getForegroundUserId() == userInfo.id;
+
+ boolean isForeground =
+ mCarUserManagerHelper.getCurrentForegroundUserId() == userInfo.id;
UserRecord record = new UserRecord(userInfo, false /* isStartGuestSession */,
false /* isAddUser */, isForeground);
userRecords.add(record);
@@ -113,7 +115,7 @@
userRecords.add(createStartGuestUserRecord());
// Add add user record if the foreground user can add users
- if (mUserManagerHelper.foregroundUserCanAddUsers()) {
+ if (mCarUserManagerHelper.canForegroundUserAddUsers()) {
userRecords.add(createAddUserRecord());
}
@@ -147,7 +149,7 @@
@Override
public void onUsersUpdate() {
mAdapter.clearUsers();
- mAdapter.updateUsers(createUserRecords(mUserManagerHelper.getAllUsers()));
+ mAdapter.updateUsers(createUserRecords(mCarUserManagerHelper.getAllUsers()));
mAdapter.notifyDataSetChanged();
}
@@ -210,7 +212,7 @@
if (userRecord.mIsStartGuestSession) {
notifyUserSelected(userRecord);
- mUserManagerHelper.startNewGuestSession(mGuestName);
+ mCarUserManagerHelper.startNewGuestSession(mGuestName);
return;
}
@@ -240,7 +242,7 @@
}
// If the user doesn't want to be a guest or add a user, switch to the user selected
notifyUserSelected(userRecord);
- mUserManagerHelper.switchToUser(userRecord.mInfo);
+ mCarUserManagerHelper.switchToUser(userRecord.mInfo);
});
}
@@ -254,7 +256,7 @@
private Bitmap getUserRecordIcon(UserRecord userRecord) {
if (userRecord.mIsStartGuestSession) {
- return mUserManagerHelper.getGuestDefaultIcon();
+ return mCarUserManagerHelper.getGuestDefaultIcon();
}
if (userRecord.mIsAddUser) {
@@ -262,7 +264,7 @@
.getDrawable(R.drawable.car_add_circle_round));
}
- return mUserManagerHelper.getUserIcon(userRecord.mInfo);
+ return mCarUserManagerHelper.getUserIcon(userRecord.mInfo);
}
@Override
@@ -290,7 +292,7 @@
@Override
protected UserInfo doInBackground(String... userNames) {
- return mUserManagerHelper.createNewUser(userNames[0]);
+ return mCarUserManagerHelper.createNewNonAdminUser(userNames[0]);
}
@Override
@@ -300,7 +302,7 @@
@Override
protected void onPostExecute(UserInfo user) {
if (user != null) {
- mUserManagerHelper.switchToUser(user);
+ mCarUserManagerHelper.switchToUser(user);
}
}
}