Loading src/com/android/settings/users/UserSettings.java +29 −18 Original line number Original line Diff line number Diff line Loading @@ -42,13 +42,6 @@ import android.os.UserHandle; import android.os.UserManager; import android.os.UserManager; import android.provider.ContactsContract; import android.provider.ContactsContract; import android.provider.SearchIndexableResource; import android.provider.SearchIndexableResource; import android.provider.Settings.Global; import androidx.annotation.VisibleForTesting; import androidx.annotation.WorkerThread; import androidx.preference.Preference; import androidx.preference.Preference.OnPreferenceClickListener; import androidx.preference.PreferenceGroup; import androidx.preference.PreferenceScreen; import android.util.Log; import android.util.Log; import android.util.SparseArray; import android.util.SparseArray; import android.view.Menu; import android.view.Menu; Loading Loading @@ -82,6 +75,13 @@ import java.util.Collections; import java.util.HashMap; import java.util.HashMap; import java.util.List; import java.util.List; import androidx.annotation.VisibleForTesting; import androidx.annotation.WorkerThread; import androidx.preference.Preference; import androidx.preference.Preference.OnPreferenceClickListener; import androidx.preference.PreferenceGroup; import androidx.preference.PreferenceScreen; /** /** * Screen that manages the list of users on the device. * Screen that manages the list of users on the device. * Guest user is an always visible entry, even if the guest is not currently * Guest user is an always visible entry, even if the guest is not currently Loading Loading @@ -109,6 +109,8 @@ public class UserSettings extends SettingsPreferenceFragment private static final int MENU_REMOVE_USER = Menu.FIRST; private static final int MENU_REMOVE_USER = Menu.FIRST; private static final IntentFilter USER_REMOVED_INTENT_FILTER; private static final int DIALOG_CONFIRM_REMOVE = 1; private static final int DIALOG_CONFIRM_REMOVE = 1; private static final int DIALOG_ADD_USER = 2; private static final int DIALOG_ADD_USER = 2; private static final int DIALOG_SETUP_USER = 3; private static final int DIALOG_SETUP_USER = 3; Loading @@ -134,6 +136,11 @@ public class UserSettings extends SettingsPreferenceFragment private static final String KEY_TITLE = "title"; private static final String KEY_TITLE = "title"; private static final String KEY_SUMMARY = "summary"; private static final String KEY_SUMMARY = "summary"; static { USER_REMOVED_INTENT_FILTER = new IntentFilter(Intent.ACTION_USER_REMOVED); USER_REMOVED_INTENT_FILTER.addAction(Intent.ACTION_USER_INFO_CHANGED); } private PreferenceGroup mUserListCategory; private PreferenceGroup mUserListCategory; private UserPreference mMePreference; private UserPreference mMePreference; private RestrictedPreference mAddUser; private RestrictedPreference mAddUser; Loading Loading @@ -195,13 +202,14 @@ public class UserSettings extends SettingsPreferenceFragment public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) { super.onCreate(icicle); super.onCreate(icicle); addPreferencesFromResource(R.xml.user_settings); addPreferencesFromResource(R.xml.user_settings); if (Global.getInt(getContext().getContentResolver(), Global.DEVICE_PROVISIONED, 0) == 0) { final Activity activity = getActivity(); getActivity().finish(); if (!Utils.isDeviceProvisioned(getActivity())) { activity.finish(); return; return; } } final Context context = getActivity(); mAddUserWhenLockedPreferenceController = new AddUserWhenLockedPreferenceController( mAddUserWhenLockedPreferenceController = new AddUserWhenLockedPreferenceController( context, KEY_ADD_USER_WHEN_LOCKED, getLifecycle()); activity, KEY_ADD_USER_WHEN_LOCKED, getLifecycle()); final PreferenceScreen screen = getPreferenceScreen(); final PreferenceScreen screen = getPreferenceScreen(); mAddUserWhenLockedPreferenceController.displayPreference(screen); mAddUserWhenLockedPreferenceController.displayPreference(screen); Loading @@ -218,8 +226,8 @@ public class UserSettings extends SettingsPreferenceFragment mEditUserInfoController.onRestoreInstanceState(icicle); mEditUserInfoController.onRestoreInstanceState(icicle); } } mUserCaps = UserCapabilities.create(context); mUserCaps = UserCapabilities.create(activity); mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE); mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); if (!mUserCaps.mEnabled) { if (!mUserCaps.mEnabled) { return; return; } } Loading Loading @@ -248,9 +256,10 @@ public class UserSettings extends SettingsPreferenceFragment } else { } else { mAddUser.setVisible(false); mAddUser.setVisible(false); } } final IntentFilter filter = new IntentFilter(Intent.ACTION_USER_REMOVED); filter.addAction(Intent.ACTION_USER_INFO_CHANGED); activity.registerReceiverAsUser( context.registerReceiverAsUser(mUserChangeReceiver, UserHandle.ALL, filter, null, mHandler); mUserChangeReceiver, UserHandle.ALL, USER_REMOVED_INTENT_FILTER, null, mHandler); loadProfile(); loadProfile(); updateUserList(); updateUserList(); mShouldUpdateUserList = false; mShouldUpdateUserList = false; Loading Loading @@ -762,9 +771,11 @@ public class UserSettings extends SettingsPreferenceFragment } } private void updateUserList() { private void updateUserList() { if (getActivity() == null) return; List<UserInfo> users = mUserManager.getUsers(true); final Context context = getActivity(); final Context context = getActivity(); if (context == null) { return; } final List<UserInfo> users = mUserManager.getUsers(true); final boolean voiceCapable = Utils.isVoiceCapable(context); final boolean voiceCapable = Utils.isVoiceCapable(context); final ArrayList<Integer> missingIcons = new ArrayList<>(); final ArrayList<Integer> missingIcons = new ArrayList<>(); Loading Loading
src/com/android/settings/users/UserSettings.java +29 −18 Original line number Original line Diff line number Diff line Loading @@ -42,13 +42,6 @@ import android.os.UserHandle; import android.os.UserManager; import android.os.UserManager; import android.provider.ContactsContract; import android.provider.ContactsContract; import android.provider.SearchIndexableResource; import android.provider.SearchIndexableResource; import android.provider.Settings.Global; import androidx.annotation.VisibleForTesting; import androidx.annotation.WorkerThread; import androidx.preference.Preference; import androidx.preference.Preference.OnPreferenceClickListener; import androidx.preference.PreferenceGroup; import androidx.preference.PreferenceScreen; import android.util.Log; import android.util.Log; import android.util.SparseArray; import android.util.SparseArray; import android.view.Menu; import android.view.Menu; Loading Loading @@ -82,6 +75,13 @@ import java.util.Collections; import java.util.HashMap; import java.util.HashMap; import java.util.List; import java.util.List; import androidx.annotation.VisibleForTesting; import androidx.annotation.WorkerThread; import androidx.preference.Preference; import androidx.preference.Preference.OnPreferenceClickListener; import androidx.preference.PreferenceGroup; import androidx.preference.PreferenceScreen; /** /** * Screen that manages the list of users on the device. * Screen that manages the list of users on the device. * Guest user is an always visible entry, even if the guest is not currently * Guest user is an always visible entry, even if the guest is not currently Loading Loading @@ -109,6 +109,8 @@ public class UserSettings extends SettingsPreferenceFragment private static final int MENU_REMOVE_USER = Menu.FIRST; private static final int MENU_REMOVE_USER = Menu.FIRST; private static final IntentFilter USER_REMOVED_INTENT_FILTER; private static final int DIALOG_CONFIRM_REMOVE = 1; private static final int DIALOG_CONFIRM_REMOVE = 1; private static final int DIALOG_ADD_USER = 2; private static final int DIALOG_ADD_USER = 2; private static final int DIALOG_SETUP_USER = 3; private static final int DIALOG_SETUP_USER = 3; Loading @@ -134,6 +136,11 @@ public class UserSettings extends SettingsPreferenceFragment private static final String KEY_TITLE = "title"; private static final String KEY_TITLE = "title"; private static final String KEY_SUMMARY = "summary"; private static final String KEY_SUMMARY = "summary"; static { USER_REMOVED_INTENT_FILTER = new IntentFilter(Intent.ACTION_USER_REMOVED); USER_REMOVED_INTENT_FILTER.addAction(Intent.ACTION_USER_INFO_CHANGED); } private PreferenceGroup mUserListCategory; private PreferenceGroup mUserListCategory; private UserPreference mMePreference; private UserPreference mMePreference; private RestrictedPreference mAddUser; private RestrictedPreference mAddUser; Loading Loading @@ -195,13 +202,14 @@ public class UserSettings extends SettingsPreferenceFragment public void onCreate(Bundle icicle) { public void onCreate(Bundle icicle) { super.onCreate(icicle); super.onCreate(icicle); addPreferencesFromResource(R.xml.user_settings); addPreferencesFromResource(R.xml.user_settings); if (Global.getInt(getContext().getContentResolver(), Global.DEVICE_PROVISIONED, 0) == 0) { final Activity activity = getActivity(); getActivity().finish(); if (!Utils.isDeviceProvisioned(getActivity())) { activity.finish(); return; return; } } final Context context = getActivity(); mAddUserWhenLockedPreferenceController = new AddUserWhenLockedPreferenceController( mAddUserWhenLockedPreferenceController = new AddUserWhenLockedPreferenceController( context, KEY_ADD_USER_WHEN_LOCKED, getLifecycle()); activity, KEY_ADD_USER_WHEN_LOCKED, getLifecycle()); final PreferenceScreen screen = getPreferenceScreen(); final PreferenceScreen screen = getPreferenceScreen(); mAddUserWhenLockedPreferenceController.displayPreference(screen); mAddUserWhenLockedPreferenceController.displayPreference(screen); Loading @@ -218,8 +226,8 @@ public class UserSettings extends SettingsPreferenceFragment mEditUserInfoController.onRestoreInstanceState(icicle); mEditUserInfoController.onRestoreInstanceState(icicle); } } mUserCaps = UserCapabilities.create(context); mUserCaps = UserCapabilities.create(activity); mUserManager = (UserManager) context.getSystemService(Context.USER_SERVICE); mUserManager = (UserManager) activity.getSystemService(Context.USER_SERVICE); if (!mUserCaps.mEnabled) { if (!mUserCaps.mEnabled) { return; return; } } Loading Loading @@ -248,9 +256,10 @@ public class UserSettings extends SettingsPreferenceFragment } else { } else { mAddUser.setVisible(false); mAddUser.setVisible(false); } } final IntentFilter filter = new IntentFilter(Intent.ACTION_USER_REMOVED); filter.addAction(Intent.ACTION_USER_INFO_CHANGED); activity.registerReceiverAsUser( context.registerReceiverAsUser(mUserChangeReceiver, UserHandle.ALL, filter, null, mHandler); mUserChangeReceiver, UserHandle.ALL, USER_REMOVED_INTENT_FILTER, null, mHandler); loadProfile(); loadProfile(); updateUserList(); updateUserList(); mShouldUpdateUserList = false; mShouldUpdateUserList = false; Loading Loading @@ -762,9 +771,11 @@ public class UserSettings extends SettingsPreferenceFragment } } private void updateUserList() { private void updateUserList() { if (getActivity() == null) return; List<UserInfo> users = mUserManager.getUsers(true); final Context context = getActivity(); final Context context = getActivity(); if (context == null) { return; } final List<UserInfo> users = mUserManager.getUsers(true); final boolean voiceCapable = Utils.isVoiceCapable(context); final boolean voiceCapable = Utils.isVoiceCapable(context); final ArrayList<Integer> missingIcons = new ArrayList<>(); final ArrayList<Integer> missingIcons = new ArrayList<>(); Loading