Merge "Fix regulatory information dialog appearance" into jb-mr1-dev
diff --git a/res/values/bools.xml b/res/values/bools.xml
index ba402e5..76dc44a 100644
--- a/res/values/bools.xml
+++ b/res/values/bools.xml
@@ -30,9 +30,6 @@
Can be overridden for specific product builds. -->
<bool name="auto_confirm_bluetooth_activation_dialog">false</bool>
- <!-- Whether User management screen is available -->
- <bool name="enable_user_management">false</bool>
-
<!-- Whether to show a preference item for regulatory information in About phone -->
<bool name="config_show_regulatory_info">false</bool>
</resources>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index e08cdeb..00adeba 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1218,9 +1218,9 @@
<!-- Generic error message when the sleep policy could not be set. -->
<string name="wifi_setting_sleep_policy_error">There was a problem changing the setting</string>
<!-- Checkbox title for option to toggle suspend power optimizations -->
- <string name="wifi_suspend_optimizations">Power save</string>
+ <string name="wifi_suspend_optimizations">Wi-Fi optimization</string>
<!-- Checkbox summary for option to toggle suspend power optimizations -->
- <string name="wifi_suspend_optimizations_summary">Save power when screen is turned off</string>
+ <string name="wifi_suspend_optimizations_summary">Minimize battery usage when Wi-Fi is on</string>
<!-- Action bar text message to manually add a wifi network [CHAR LIMIT=20]-->
<string name="wifi_add_network">Add network</string>
<!-- Header for the list of wifi networks-->
@@ -1460,10 +1460,8 @@
<string name="wifi_p2p_cancel_connect_title">Cancel invitation?</string>
<!-- Message text for disconnection from one device-->
<string name="wifi_p2p_cancel_connect_message">Do you want to cancel invitation to connect with <xliff:g id="peer_name">%1$s</xliff:g>?</string>
- <!-- Title for delete group dialog -->
- <string name="wifi_p2p_delete_group_title">Delete group?</string>
<!-- Message text for remembered group deletion-->
- <string name="wifi_p2p_delete_group_message">Do you want to delete the group <xliff:g id="group_name">%1$s</xliff:g>?</string>
+ <string name="wifi_p2p_delete_group_message">Forget this group?</string>
<!-- Wifi AP settings-->
<!-- Label for wifi tether checkbox. Toggles Access Point on/off -->
diff --git a/src/com/android/settings/DeviceInfoSettings.java b/src/com/android/settings/DeviceInfoSettings.java
index 258ea64..eb9e918 100644
--- a/src/com/android/settings/DeviceInfoSettings.java
+++ b/src/com/android/settings/DeviceInfoSettings.java
@@ -175,7 +175,10 @@
private void removePreferenceIfBoolFalse(String preference, int resId) {
if (!getResources().getBoolean(resId)) {
- getPreferenceScreen().removePreference(findPreference(preference));
+ Preference pref = findPreference(preference);
+ if (pref != null) {
+ getPreferenceScreen().removePreference(pref);
+ }
}
}
diff --git a/src/com/android/settings/Settings.java b/src/com/android/settings/Settings.java
index bf31386..fa30f09 100644
--- a/src/com/android/settings/Settings.java
+++ b/src/com/android/settings/Settings.java
@@ -42,6 +42,7 @@
import android.os.RemoteException;
import android.os.ServiceManager;
import android.os.UserHandle;
+import android.os.UserManager;
import android.preference.Preference;
import android.preference.PreferenceActivity;
import android.preference.PreferenceActivity.Header;
@@ -415,7 +416,7 @@
i = insertAccountsHeaders(target, headerIndex);
} else if (id == R.id.user_settings) {
if (!UserHandle.MU_ENABLED
- || !getResources().getBoolean(R.bool.enable_user_management)
+ || !UserManager.supportsMultipleUsers()
|| Utils.isMonkeyRunning()) {
target.remove(header);
}
diff --git a/src/com/android/settings/applications/InstalledAppDetails.java b/src/com/android/settings/applications/InstalledAppDetails.java
index 2284b91..97d7b75 100644
--- a/src/com/android/settings/applications/InstalledAppDetails.java
+++ b/src/com/android/settings/applications/InstalledAppDetails.java
@@ -564,6 +564,16 @@
}
}
mAppEntry = mState.getEntry(packageName);
+ // Get application info again to refresh changed properties of application
+ try {
+ mPackageInfo = mPm.getPackageInfo(mAppEntry.info.packageName,
+ PackageManager.GET_DISABLED_COMPONENTS |
+ PackageManager.GET_UNINSTALLED_PACKAGES |
+ PackageManager.GET_SIGNATURES);
+ } catch (NameNotFoundException e) {
+ Log.e(TAG, "Exception when retrieving package:" + mAppEntry.info.packageName, e);
+ }
+
return packageName;
}
@@ -576,18 +586,11 @@
if (mAppEntry == null) {
return false; // onCreate must have failed, make sure to exit
}
-
- // Get application info again to refresh changed properties of application
- try {
- mPackageInfo = mPm.getPackageInfo(mAppEntry.info.packageName,
- PackageManager.GET_DISABLED_COMPONENTS |
- PackageManager.GET_UNINSTALLED_PACKAGES |
- PackageManager.GET_SIGNATURES);
- } catch (NameNotFoundException e) {
- Log.e(TAG, "Exception when retrieving package:" + mAppEntry.info.packageName, e);
+
+ if (mPackageInfo == null) {
return false; // onCreate must have failed, make sure to exit
}
-
+
// Get list of preferred activities
List<ComponentName> prefActList = new ArrayList<ComponentName>();
diff --git a/src/com/android/settings/fuelgauge/PowerUsageSummary.java b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
index 9bd5538..5704163 100644
--- a/src/com/android/settings/fuelgauge/PowerUsageSummary.java
+++ b/src/com/android/settings/fuelgauge/PowerUsageSummary.java
@@ -767,10 +767,7 @@
final int userId = mUserSippers.keyAt(i);
final List<BatterySipper> sippers = mUserSippers.valueAt(i);
UserInfo info = mUm.getUserInfo(userId);
- Drawable icon = null;
- if (info != null && info.iconPath != null) {
- icon = UserUtils.getUserIcon(mUm, info);
- }
+ Drawable icon = UserUtils.getUserIcon(mUm, info, getResources());
String name = info != null ? info.name : null;
if (name == null) {
name = Integer.toString(info.id);
diff --git a/src/com/android/settings/net/UidDetailProvider.java b/src/com/android/settings/net/UidDetailProvider.java
index 37b99dd..c631695 100644
--- a/src/com/android/settings/net/UidDetailProvider.java
+++ b/src/com/android/settings/net/UidDetailProvider.java
@@ -32,6 +32,7 @@
import com.android.settings.R;
import com.android.settings.Utils;
+import com.android.settings.users.UserUtils;
/**
* Return details about a specific UID, handling special cases like
@@ -118,7 +119,7 @@
final UserInfo info = um.getUserInfo(userHandle);
if (info != null) {
detail.label = res.getString(R.string.running_process_item_user_label, info.name);
- detail.icon = Drawable.createFromPath(info.iconPath);
+ detail.icon = UserUtils.getUserIcon(um, info, res);
return detail;
}
}
diff --git a/src/com/android/settings/users/UserUtils.java b/src/com/android/settings/users/UserUtils.java
index 433cbd3..1d16bcf 100644
--- a/src/com/android/settings/users/UserUtils.java
+++ b/src/com/android/settings/users/UserUtils.java
@@ -17,18 +17,17 @@
package com.android.settings.users;
import android.content.pm.UserInfo;
+import android.content.res.Resources;
import android.graphics.Bitmap;
import android.graphics.drawable.BitmapDrawable;
import android.graphics.drawable.Drawable;
-import android.os.ParcelFileDescriptor;
import android.os.UserManager;
public class UserUtils {
-
- public static Drawable getUserIcon(UserManager um, UserInfo user) {
+ public static Drawable getUserIcon(UserManager um, UserInfo user, Resources res) {
if (user.iconPath == null) return null;
Bitmap icon = um.getUserIcon(user.id);
if (icon == null) return null;
- return new BitmapDrawable(icon);
+ return new BitmapDrawable(res, icon);
}
}
diff --git a/src/com/android/settings/vpn2/VpnSettings.java b/src/com/android/settings/vpn2/VpnSettings.java
index 07aa04f..931f0c2 100644
--- a/src/com/android/settings/vpn2/VpnSettings.java
+++ b/src/com/android/settings/vpn2/VpnSettings.java
@@ -49,6 +49,7 @@
import com.android.internal.net.LegacyVpnInfo;
import com.android.internal.net.VpnConfig;
import com.android.internal.net.VpnProfile;
+import com.android.internal.util.ArrayUtils;
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
import com.google.android.collect.Lists;
@@ -463,7 +464,7 @@
private void initProfiles(KeyStore keyStore, Resources res) {
final String lockdownKey = getStringOrNull(keyStore, Credentials.LOCKDOWN_VPN);
- mProfiles = loadVpnProfiles(keyStore);
+ mProfiles = loadVpnProfiles(keyStore, VpnProfile.TYPE_PPTP);
mTitles = Lists.newArrayList();
mTitles.add(res.getText(R.string.vpn_lockdown_none));
mCurrentIndex = 0;
@@ -523,14 +524,14 @@
}
}
- private static List<VpnProfile> loadVpnProfiles(KeyStore keyStore) {
+ private static List<VpnProfile> loadVpnProfiles(KeyStore keyStore, int... excludeTypes) {
final ArrayList<VpnProfile> result = Lists.newArrayList();
final String[] keys = keyStore.saw(Credentials.VPN);
if (keys != null) {
for (String key : keys) {
final VpnProfile profile = VpnProfile.decode(
key, keyStore.get(Credentials.VPN + key));
- if (profile != null) {
+ if (profile != null && !ArrayUtils.contains(excludeTypes, profile.type)) {
result.add(profile);
}
}
diff --git a/src/com/android/settings/wifi/p2p/WifiP2pSettings.java b/src/com/android/settings/wifi/p2p/WifiP2pSettings.java
index 1bb253a..2496d8e 100644
--- a/src/com/android/settings/wifi/p2p/WifiP2pSettings.java
+++ b/src/com/android/settings/wifi/p2p/WifiP2pSettings.java
@@ -444,8 +444,7 @@
int stringId = R.string.wifi_p2p_delete_group_message;
AlertDialog dialog = new AlertDialog.Builder(getActivity())
- .setTitle(R.string.wifi_p2p_delete_group_title)
- .setMessage(getActivity().getString(stringId, mSelectedGroup.getGroupName()))
+ .setMessage(getActivity().getString(stringId))
.setPositiveButton(getActivity().getString(R.string.dlg_ok), mDeleteGroupListener)
.setNegativeButton(getActivity().getString(R.string.dlg_cancel), null)
.create();