From 32630395eb7dd8401f344599640c8bcf1e289bb0 Mon Sep 17 00:00:00 2001 From: Amith Yamasani Date: Fri, 10 Aug 2012 19:31:39 -0700 Subject: [PATCH] Use UserManager instead of PackageManager for user management Show Accounts in secondary settings Move Users & restrictions to Device section Change-Id: Idcd7ed44801fe92c847cff81d11f3d6f6d06ba81 --- res/xml/settings_headers.xml | 26 ++++++----- src/com/android/settings/Settings.java | 5 +++ .../settings/users/UserDetailsSettings.java | 43 +++++++------------ .../android/settings/users/UserSettings.java | 5 ++- 4 files changed, 40 insertions(+), 39 deletions(-) diff --git a/res/xml/settings_headers.xml b/res/xml/settings_headers.xml index 96ce0f1f71f..c426a0db551 100644 --- a/res/xml/settings_headers.xml +++ b/res/xml/settings_headers.xml @@ -19,7 +19,8 @@ -
+
-
+
+ +
+
-
+
- -
-
-
+
users = mPm.getUsers(); + List users = mUm.getUsers(); UserInfo foundUser = null; for (UserInfo user : users) { if (user.id == mUserId) { @@ -193,12 +194,7 @@ public class UserDetailsSettings extends SettingsPreferenceFragment } private void removeUserNow() { - try { - mIPm.removeUser(mUserId); - } catch (RemoteException re) { - // Couldn't remove user. Shouldn't happen - Log.e(TAG, "Couldn't remove user " + mUserId + "\n" + re); - } + mUm.removeUser(mUserId); finish(); } @@ -276,12 +272,8 @@ public class UserDetailsSettings extends SettingsPreferenceFragment if (TextUtils.isEmpty(name)) { return false; } - try { - mIPm.setUserName(mUserId, (String) newValue); - mNamePref.setSummary((String) newValue); - } catch (RemoteException re) { - return false; - } + mUm.setUserName(mUserId, (String) newValue); + mNamePref.setSummary((String) newValue); } return true; } @@ -354,17 +346,14 @@ public class UserDetailsSettings extends SettingsPreferenceFragment } private void saveCroppedImage(Intent data) { - try { - if (data.hasExtra("data")) { - Bitmap bitmap = (Bitmap) data.getParcelableExtra("data"); - ParcelFileDescriptor fd = mIPm.setUserIcon(mUserId); - if (fd != null) { - bitmap.compress(CompressFormat.PNG, 100, - new ParcelFileDescriptor.AutoCloseOutputStream(fd)); - setPhotoId(mPm.getUser(mUserId).iconPath); - } + if (data.hasExtra("data")) { + Bitmap bitmap = (Bitmap) data.getParcelableExtra("data"); + ParcelFileDescriptor fd = mUm.setUserIcon(mUserId); + if (fd != null) { + bitmap.compress(CompressFormat.PNG, 100, + new ParcelFileDescriptor.AutoCloseOutputStream(fd)); + setPhotoId(mUm.getUserInfo(mUserId).iconPath); } - } catch (RemoteException re) { } } diff --git a/src/com/android/settings/users/UserSettings.java b/src/com/android/settings/users/UserSettings.java index d32cb45efb7..e5304931040 100644 --- a/src/com/android/settings/users/UserSettings.java +++ b/src/com/android/settings/users/UserSettings.java @@ -16,9 +16,11 @@ package com.android.settings.users; +import android.content.Context; import android.content.pm.UserInfo; import android.graphics.drawable.Drawable; import android.os.Bundle; +import android.os.UserManager; import android.preference.Preference; import android.preference.Preference.OnPreferenceClickListener; import android.preference.PreferenceActivity; @@ -80,7 +82,8 @@ public class UserSettings extends SettingsPreferenceFragment } private void updateUserList() { - List users = getActivity().getPackageManager().getUsers(); + List users = ((UserManager) getActivity().getSystemService(Context.USER_SERVICE)) + .getUsers(); mUserListCategory.removeAll(); for (UserInfo user : users) {