Merge "Update the icon of security IA." into rvc-dev
diff --git a/res/values/strings.xml b/res/values/strings.xml
index 555cbd1..2fd7e45 100644
--- a/res/values/strings.xml
+++ b/res/values/strings.xml
@@ -7196,6 +7196,9 @@
<string name="help_url_double_tap_screen" translatable="false"></string>
<string name="help_url_account_detail" translatable="false"></string>
<string name="help_url_icc_lock" translatable="false"></string>
+ <!-- Help URI, ManageSubscription [DO NOT TRANSLATE] -->
+ <string name="help_url_manage_wifi_subscription" translatable="false"></string>
+
<string name="help_uri_process_stats_summary" translatable="false"></string>
<string name="help_uri_process_stats_apps" translatable="false"></string>
<string name="help_uri_private_dns" translatable="false"></string>
diff --git a/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java b/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java
index ab8327c..2340236 100644
--- a/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java
+++ b/src/com/android/settings/network/telephony/RenameMobileNetworkDialogFragment.java
@@ -200,7 +200,7 @@
private Color[] getColors() {
final Resources res = getContext().getResources();
- final int[] colorInts = res.getIntArray(android.R.array.simColors);
+ final int[] colorInts = res.getIntArray(com.android.internal.R.array.sim_colors);
final String[] colorStrings = res.getStringArray(R.array.color_picker);
final int iconSize = res.getDimensionPixelSize(R.dimen.color_swatch_size);
final int strokeWidth = res.getDimensionPixelSize(R.dimen.color_swatch_stroke_width);
diff --git a/src/com/android/settings/wifi/WifiSettings2.java b/src/com/android/settings/wifi/WifiSettings2.java
index 5152569..b94994e 100644
--- a/src/com/android/settings/wifi/WifiSettings2.java
+++ b/src/com/android/settings/wifi/WifiSettings2.java
@@ -22,6 +22,7 @@
import android.app.Activity;
import android.app.Dialog;
import android.app.settings.SettingsEnums;
+import android.content.ActivityNotFoundException;
import android.content.ContentResolver;
import android.content.Context;
import android.content.DialogInterface;
@@ -69,6 +70,7 @@
import com.android.settings.widget.SwitchBarController;
import com.android.settings.wifi.details2.WifiNetworkDetailsFragment2;
import com.android.settings.wifi.dpp.WifiDppUtils;
+import com.android.settingslib.HelpUtils;
import com.android.settingslib.RestrictedLockUtils;
import com.android.settingslib.RestrictedLockUtilsInternal;
import com.android.settingslib.search.Indexable;
@@ -109,6 +111,7 @@
@VisibleForTesting
static final int ADD_NETWORK_REQUEST = 2;
static final int CONFIG_NETWORK_REQUEST = 3;
+ static final int MANAGE_SUBSCRIPTION = 4;
private static final String PREF_KEY_EMPTY_WIFI_LIST = "wifi_empty_list";
// TODO(b/70983952): Rename these to use WifiEntry instead of AccessPoint.
@@ -428,6 +431,9 @@
}
}
return;
+ } else if (requestCode == MANAGE_SUBSCRIPTION) {
+ //Do nothing
+ return;
}
final boolean formerlyRestricted = mIsRestricted;
@@ -750,6 +756,12 @@
pref.setKey(wifiEntry.getKey());
pref.setOrder(index++);
pref.refresh();
+
+ if (wifiEntry.canManageSubscription()) {
+ pref.setOnButtonClickListener(preference -> {
+ openSubscriptionHelpPage();
+ });
+ }
mWifiEntryPreferenceCategory.addPreference(pref);
}
removeCachedPrefs(mWifiEntryPreferenceCategory);
@@ -1061,4 +1073,24 @@
int reason = networkStatus.getNetworkSelectionDisableReason();
return WifiConfiguration.NetworkSelectionStatus.DISABLED_BY_WRONG_PASSWORD == reason;
}
+
+ @VisibleForTesting
+ void openSubscriptionHelpPage() {
+ final Intent intent = getHelpIntent(getContext());
+ if (intent != null) {
+ try {
+ startActivityForResult(intent, MANAGE_SUBSCRIPTION);
+ } catch (ActivityNotFoundException e) {
+ Log.e(TAG, "Activity was not found for intent, " + intent.toString());
+ }
+ }
+ }
+
+ @VisibleForTesting
+ Intent getHelpIntent(Context context) {
+ return HelpUtils.getHelpIntent(
+ context,
+ context.getString(R.string.help_url_manage_wifi_subscription),
+ context.getClass().getName());
+ }
}
diff --git a/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/ContextualAdaptiveSleepSliceTest.java b/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/ContextualAdaptiveSleepSliceTest.java
index 0a88d64..3261902 100644
--- a/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/ContextualAdaptiveSleepSliceTest.java
+++ b/tests/robotests/src/com/android/settings/homepage/contextualcards/slices/ContextualAdaptiveSleepSliceTest.java
@@ -66,7 +66,7 @@
mContext = spy(RuntimeEnvironment.application);
mContextualAdaptiveSleepSlice = spy(new ContextualAdaptiveSleepSlice(mContext));
- Settings.System.putInt(mContext.getContentResolver(), Settings.System.ADAPTIVE_SLEEP, 0);
+ Settings.Secure.putInt(mContext.getContentResolver(), Settings.Secure.ADAPTIVE_SLEEP, 0);
doReturn(mPackageManager).when(mContext).getPackageManager();
doReturn(mSharedPreferences).when(mContext).getSharedPreferences(eq(PREF), anyInt());
doReturn(true).when(mContextualAdaptiveSleepSlice).isSettingsAvailable();
@@ -124,7 +124,7 @@
@Test
public void getSlice_DoNotShowIFTurnedOn() {
- Settings.System.putInt(mContext.getContentResolver(), Settings.System.ADAPTIVE_SLEEP, 1);
+ Settings.Secure.putInt(mContext.getContentResolver(), Settings.Secure.ADAPTIVE_SLEEP, 1);
final Slice slice = mContextualAdaptiveSleepSlice.getSlice();
diff --git a/tests/robotests/src/com/android/settings/wifi/WifiSettings2Test.java b/tests/robotests/src/com/android/settings/wifi/WifiSettings2Test.java
index 2af87fe..c85ea49 100644
--- a/tests/robotests/src/com/android/settings/wifi/WifiSettings2Test.java
+++ b/tests/robotests/src/com/android/settings/wifi/WifiSettings2Test.java
@@ -25,6 +25,7 @@
import static org.mockito.Mockito.doReturn;
import static org.mockito.Mockito.mock;
import static org.mockito.Mockito.spy;
+import static org.mockito.Mockito.times;
import static org.mockito.Mockito.verify;
import static org.mockito.Mockito.when;
@@ -98,13 +99,14 @@
@Test
public void addNetworkFragmentSendResult_onActivityResult_shouldHandleEvent() {
- final WifiSettings wifiSettings = spy(new WifiSettings());
+ final WifiSettings2 wifiSettings2 = spy(new WifiSettings2());
final Intent intent = new Intent();
- doNothing().when(wifiSettings).handleAddNetworkRequest(anyInt(), any(Intent.class));
+ doNothing().when(wifiSettings2).handleAddNetworkRequest(anyInt(), any(Intent.class));
- wifiSettings.onActivityResult(WifiSettings.ADD_NETWORK_REQUEST, Activity.RESULT_OK, intent);
+ wifiSettings2.onActivityResult(WifiSettings2.ADD_NETWORK_REQUEST, Activity.RESULT_OK,
+ intent);
- verify(wifiSettings).handleAddNetworkRequest(anyInt(), any(Intent.class));
+ verify(wifiSettings2).handleAddNetworkRequest(anyInt(), any(Intent.class));
}
@Test
@@ -163,7 +165,7 @@
public void setAdditionalSettingsSummaries_wifiWakeupEnabled_displayOn() {
final ContentResolver contentResolver = mContext.getContentResolver();
when(mWifiManager.isAutoWakeupEnabled()).thenReturn(true);
- when(mWifiManager.isScanAlwaysAvailable()).thenReturn(false);
+ when(mWifiManager.isScanAlwaysAvailable()).thenReturn(true);
Settings.Global.putInt(contentResolver, Settings.Global.AIRPLANE_MODE_ON, 0);
when(mPowerManager.isPowerSaveMode()).thenReturn(false);
@@ -200,7 +202,7 @@
when(activity.getSystemService(Context.USER_SERVICE))
.thenReturn(userManager);
- when(mWifiSettings2.findPreference(WifiSettings.PREF_KEY_DATA_USAGE))
+ when(mWifiSettings2.findPreference(WifiSettings2.PREF_KEY_DATA_USAGE))
.thenReturn(mDataUsagePreference);
}
@@ -268,4 +270,14 @@
verify(mWifiSettings2).changeNextButtonState(anyBoolean());
}
+
+ @Test
+ public void openSubscriptionHelpPage_shouldCallStartActivityForResult() {
+ doReturn(new Intent()).when(mWifiSettings2).getHelpIntent(mContext);
+ doNothing().when(mWifiSettings2).startActivityForResult(any(Intent.class), anyInt());
+
+ mWifiSettings2.openSubscriptionHelpPage();
+
+ verify(mWifiSettings2, times(1)).startActivityForResult(any(), anyInt());
+ }
}