Merge "Move PermissionsInfo to SettingsLib"
diff --git a/res/layout/mac_preference.xml b/res/layout/mac_preference.xml
deleted file mode 100644
index f096b07..0000000
--- a/res/layout/mac_preference.xml
+++ /dev/null
@@ -1,79 +0,0 @@
-<?xml version="1.0" encoding="utf-8"?>
-<!-- Copyright (C) 2014 The Android Open Source Project
-
- Licensed under the Apache License, Version 2.0 (the "License");
- you may not use this file except in compliance with the License.
- You may obtain a copy of the License at
-
- http://www.apache.org/licenses/LICENSE-2.0
-
- Unless required by applicable law or agreed to in writing, software
- distributed under the License is distributed on an "AS IS" BASIS,
- WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
- See the License for the specific language governing permissions and
- limitations under the License.
--->
-
-<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeightSmall"
- android:gravity="center_vertical"
- android:orientation="vertical"
- android:background="?android:attr/selectableItemBackground">
-
- <View
- android:layout_width="fill_parent"
- android:layout_height="@dimen/wifi_divider_height"
- android:background="@color/wifi_divider" />
-
- <LinearLayout
- android:layout_width="match_parent"
- android:layout_height="wrap_content"
- android:minHeight="?android:attr/listPreferredItemHeightSmall"
- android:gravity="center_vertical"
- android:background="?android:attr/selectableItemBackground">
-
- <RelativeLayout
- android:layout_width="0dip"
- android:layout_height="wrap_content"
- android:layout_weight="1"
- android:paddingTop="6dip"
- android:paddingBottom="6dip">
-
- <TextView
- android:id="@+android:id/title"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:paddingStart="16dip"
- android:paddingEnd="16dip"
- android:singleLine="true"
- android:textAppearance="?android:attr/textAppearanceSmall"
- android:ellipsize="marquee"
- android:fadingEdge="horizontal" />
-
- <TextView
- android:id="@android:id/summary"
- android:layout_width="match_parent"
- android:layout_height="match_parent"
- android:layout_below="@android:id/title"
- android:layout_alignStart="@android:id/title"
- android:paddingStart="16dip"
- android:layout_marginEnd="16dip"
- android:visibility="gone"
- android:textAppearance="?android:attr/textAppearanceSmall"
- android:textColor="?android:attr/textColorSecondary"
- android:maxLines="4" />
-
- </RelativeLayout>
-
- <LinearLayout
- android:id="@android:id/widget_frame"
- android:layout_width="wrap_content"
- android:layout_height="match_parent"
- android:gravity="center_vertical"
- android:orientation="vertical" />
-
- </LinearLayout>
-
-</LinearLayout>
diff --git a/res/values/strings.xml b/res/values/strings.xml
index dbd842d0..153492b 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -1444,10 +1444,6 @@
<string name="wifi_menu_scan">Scan</string>
<!-- Menu option to Wi-Fi advanced settings -->
<string name="wifi_menu_advanced">Advanced</string>
- <!-- Menu option to show app icons instead of WiFi strength [CHAR LIMIT=20]-->
- <string name="wifi_menu_apps">Show Apps</string>
- <!-- Menu option to show WiFi strength icons [CHAR LIMIT=20]-->
- <string name="wifi_menu_apps_strength">Show WiFi Strength</string>
<!-- Menu option to connect to a Wi-Fi network -->
<string name="wifi_menu_connect">Connect to network</string>
<!-- Menu option to remember a temporary Wi-Fi network -->
diff --git a/res/xml/wifi_advanced_settings.xml b/res/xml/wifi_advanced_settings.xml
index 1fc1cda..ed6cfbd 100644
--- a/res/xml/wifi_advanced_settings.xml
+++ b/res/xml/wifi_advanced_settings.xml
@@ -69,7 +69,7 @@
<Preference
android:key="mac_address"
android:title="@string/wifi_advanced_mac_address_title"
- android:layout="@layout/mac_preference" />
+ android:layout="@layout/wifi_advance_layout" />
<Preference
android:key="current_ip_address"
diff --git a/src/com/android/settings/FingerprintSettings.java b/src/com/android/settings/FingerprintSettings.java
index 749ac11..00f4b43 100644
--- a/src/com/android/settings/FingerprintSettings.java
+++ b/src/com/android/settings/FingerprintSettings.java
@@ -92,6 +92,7 @@
private static final String KEY_MANAGE_CATEGORY = "fingerprint_manage_category";
private static final String KEY_FINGERPRINT_ENABLE_KEYGUARD_TOGGLE =
"fingerprint_enable_keyguard_toggle";
+ private static final String KEY_LAUNCHED_CONFIRM = "launched_confirm";
private static final int MSG_REFRESH_FINGERPRINT_TEMPLATES = 1000;
private static final int MSG_HIGHLIGHT_FINGERPRINT_ITEM = 1001;
@@ -110,6 +111,7 @@
private CancellationSignal mFingerprintCancel;
private int mMaxFingerprintAttempts;
private byte[] mToken;
+ private boolean mLaunchedConfirm;
private AuthenticationCallback mAuthCallback = new AuthenticationCallback() {
@Override
@@ -125,9 +127,12 @@
@Override
public void onAuthenticationError(int errMsgId, CharSequence errString) {
- Toast.makeText(getActivity(), errString, Toast.LENGTH_SHORT);
- if (errMsgId != FingerprintManager.FINGERPRINT_ERROR_CANCELED) {
- retryFingerprint(false);
+ // get activity will be null on a screen rotation
+ if (getActivity() != null) {
+ Toast.makeText(getActivity(), errString, Toast.LENGTH_SHORT);
+ if (errMsgId != FingerprintManager.FINGERPRINT_ERROR_CANCELED) {
+ retryFingerprint(false);
+ }
}
}
@@ -191,13 +196,16 @@
if (savedInstanceState != null) {
mToken = savedInstanceState.getByteArray(
ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN);
+ mLaunchedConfirm = savedInstanceState.getBoolean(
+ KEY_LAUNCHED_CONFIRM, false);
}
mFingerprintManager = (FingerprintManager) getActivity().getSystemService(
Context.FINGERPRINT_SERVICE);
// Need to authenticate a session token if none
- if (mToken == null) {
+ if (mToken == null && mLaunchedConfirm == false) {
+ mLaunchedConfirm = true;
launchChooseOrConfirmLock();
}
}
@@ -307,6 +315,7 @@
public void onSaveInstanceState(final Bundle outState) {
outState.putByteArray(ChooseLockSettingsHelper.EXTRA_KEY_CHALLENGE_TOKEN,
mToken);
+ outState.putBoolean(KEY_LAUNCHED_CONFIRM, mLaunchedConfirm);
}
@Override
diff --git a/src/com/android/settings/wifi/AccessPointPreference.java b/src/com/android/settings/wifi/AccessPointPreference.java
index f68410a..8a24bc9 100644
--- a/src/com/android/settings/wifi/AccessPointPreference.java
+++ b/src/com/android/settings/wifi/AccessPointPreference.java
@@ -15,16 +15,9 @@
*/
package com.android.settings.wifi;
-import android.app.AppGlobals;
import android.content.Context;
-import android.content.pm.ApplicationInfo;
-import android.content.pm.IPackageManager;
-import android.content.pm.PackageManager;
import android.graphics.drawable.Drawable;
import android.graphics.drawable.StateListDrawable;
-import android.net.wifi.WifiConfiguration;
-import android.os.RemoteException;
-import android.os.UserHandle;
import android.preference.Preference;
import android.view.View;
import android.widget.TextView;
@@ -67,36 +60,6 @@
notifyChanged();
}
- public void showAppIcon() {
- PackageManager pm = getContext().getPackageManager();
- String systemName = pm.getNameForUid(android.os.Process.SYSTEM_UID);
- WifiConfiguration mConfig = mAccessPoint.getConfig();
-
- Drawable drawable = pm.getDefaultActivityIcon();
- if (mConfig == null) {
- drawable.setAlpha(0);
- } else {
- int userId = UserHandle.getUserId(mConfig.creatorUid);
- ApplicationInfo appInfo = null;
- if (mConfig.creatorName.equals(systemName)) {
- appInfo = getContext().getApplicationInfo();
- } else {
- try {
- IPackageManager ipm = AppGlobals.getPackageManager();
- appInfo = ipm.getApplicationInfo(mConfig.creatorName, 0 /* flags */, userId);
- } catch (RemoteException rex) {
- // use default app icon
- }
- }
- if (appInfo != null) {
- drawable = appInfo.loadIcon(pm);
- drawable = pm.getUserBadgedIcon(drawable, new UserHandle(userId));
- }
- }
-
- setIcon(drawable);
- }
-
protected void updateIcon(int level, Context context) {
if (level == -1) {
setIcon(null);
diff --git a/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java b/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java
index 2627bc4..6726717 100644
--- a/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java
+++ b/src/com/android/settings/wifi/SavedAccessPointsWifiSettings.java
@@ -16,12 +16,19 @@
package com.android.settings.wifi;
+import android.app.AppGlobals;
import android.app.Dialog;
import android.content.Context;
import android.content.DialogInterface;
+import android.content.pm.ApplicationInfo;
+import android.content.pm.IPackageManager;
+import android.content.pm.PackageManager;
import android.content.res.Resources;
+import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.os.Bundle;
+import android.os.RemoteException;
+import android.os.UserHandle;
import android.preference.Preference;
import android.preference.PreferenceScreen;
import android.util.Log;
@@ -93,11 +100,32 @@
preferenceScreen.removeAll();
+ PackageManager pm = context.getPackageManager();
+ String systemName = pm.getNameForUid(android.os.Process.SYSTEM_UID);
+
final int accessPointsSize = accessPoints.size();
for (int i = 0; i < accessPointsSize; ++i){
AccessPointPreference preference = new AccessPointPreference(accessPoints.get(i),
context);
- preference.setShowSummary(false);
+ WifiConfiguration config = accessPoints.get(i).getConfig();
+ if (config != null) {
+ int userId = UserHandle.getUserId(config.creatorUid);
+ ApplicationInfo appInfo = null;
+ if (config.creatorName != null && config.creatorName.equals(systemName)) {
+ appInfo = context.getApplicationInfo();
+ } else {
+ try {
+ IPackageManager ipm = AppGlobals.getPackageManager();
+ appInfo = ipm.getApplicationInfo(config.creatorName, 0 /* flags */, userId);
+ } catch (RemoteException rex) {
+ }
+ }
+ if (appInfo != null) {
+ preference.setSummary(getResources().getString(appInfo.labelRes));
+ }
+ } else {
+ preference.setShowSummary(false);
+ }
preferenceScreen.addPreference(preference);
}
diff --git a/src/com/android/settings/wifi/WifiSettings.java b/src/com/android/settings/wifi/WifiSettings.java
index cb6be53..f46edac 100644
--- a/src/com/android/settings/wifi/WifiSettings.java
+++ b/src/com/android/settings/wifi/WifiSettings.java
@@ -93,7 +93,6 @@
private static final int MENU_ID_FORGET = Menu.FIRST + 7;
private static final int MENU_ID_MODIFY = Menu.FIRST + 8;
private static final int MENU_ID_WRITE_NFC = Menu.FIRST + 9;
- private static final int MENU_ID_APPS = Menu.FIRST + 10;
public static final int WIFI_DIALOG_ID = 1;
/* package */ static final int WPS_PBC_DIALOG_ID = 2;
@@ -120,9 +119,6 @@
private TextView mEmptyView;
- private boolean showAppIcons = false;
- private MenuItem showAppMenuItem = null;
-
// this boolean extra specifies whether to disable the Next button when not connected. Used by
// account creation outside of setup wizard.
private static final String EXTRA_ENABLE_NEXT_ON_CONNECT = "wifi_enable_next_on_connect";
@@ -324,8 +320,6 @@
.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
menu.add(Menu.NONE, MENU_ID_ADVANCED, 0, R.string.wifi_menu_advanced)
.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
- showAppMenuItem = menu.add(Menu.NONE, MENU_ID_APPS, 0, R.string.wifi_menu_apps);
- showAppMenuItem.setShowAsAction(MenuItem.SHOW_AS_ACTION_NEVER);
ta.recycle();
}
@@ -406,16 +400,6 @@
null);
}
return true;
- case MENU_ID_APPS:
- showAppIcons = !showAppIcons;
-
- if (showAppIcons) {
- showAppMenuItem.setTitle(R.string.wifi_menu_apps_strength);
- } else {
- showAppMenuItem.setTitle(R.string.wifi_menu_apps);
- }
- onAccessPointsChanged();
- return true;
}
return super.onOptionsItemSelected(item);
}
@@ -584,9 +568,6 @@
if (accessPoint.getLevel() != -1) {
AccessPointPreference preference = new AccessPointPreference(accessPoint,
getActivity());
- if (showAppIcons) {
- preference.showAppIcon();
- }
getPreferenceScreen().addPreference(preference);
accessPoint.setListener(this);