Merge SP1A.211205.008

Bug: 205056467
Merged-In: I84848a2801172b46f7cc3ff39d88ad57e34514a4
Change-Id: I4227cf287bd7adffb3241954bd47284b7cd44fdf
This commit is contained in:
Xin Li
2021-12-20 14:06:44 -08:00
10 changed files with 106 additions and 15 deletions

View File

@@ -166,6 +166,7 @@ public class Settings extends SettingsActivity {
public static class AppUsageAccessSettingsActivity extends SettingsActivity { /* empty */ }
public static class LocationSettingsActivity extends SettingsActivity { /* empty */ }
public static class ScanningSettingsActivity extends SettingsActivity { /* empty */ }
public static class WifiScanningSettingsActivity extends SettingsActivity { /* empty */ }
public static class PrivacyDashboardActivity extends SettingsActivity { /* empty */ }
public static class PrivacySettingsActivity extends SettingsActivity { /* empty */ }
public static class FactoryResetActivity extends SettingsActivity {

View File

@@ -113,6 +113,7 @@ import com.android.settings.language.LanguageAndInputSettings;
import com.android.settings.localepicker.LocaleListEditor;
import com.android.settings.location.LocationServices;
import com.android.settings.location.LocationSettings;
import com.android.settings.location.WifiScanningFragment;
import com.android.settings.network.MobileNetworkListFragment;
import com.android.settings.network.NetworkDashboardFragment;
import com.android.settings.network.NetworkProviderSettings;
@@ -202,6 +203,7 @@ public class SettingsGateway {
ProcessStatsUi.class.getName(),
NotificationStation.class.getName(),
LocationSettings.class.getName(),
WifiScanningFragment.class.getName(),
PrivacyDashboardFragment.class.getName(),
LocationServices.class.getName(),
SecuritySettings.class.getName(),

View File

@@ -19,6 +19,7 @@ package com.android.settings.network;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.settings.SettingsEnums;
import android.content.Context;
import android.content.DialogInterface;
import android.os.AsyncTask;
import android.os.Bundle;
@@ -75,23 +76,24 @@ public class EraseEuiccDataDialogFragment extends InstrumentedDialogFragment imp
}
if (which == DialogInterface.BUTTON_POSITIVE) {
if (ConfirmationSimDeletionPredicate.getSingleton().test(getContext())) {
Context context = getContext();
if (ConfirmationSimDeletionPredicate.getSingleton().test(context)) {
// Create a "verify it's you" verification over keyguard
// when "erase" button been pressed.
// This might protect from erasing by some automation process.
WifiDppUtils.showLockScreen(getContext(), () -> runAsyncWipe());
WifiDppUtils.showLockScreen(context, () -> runAsyncWipe(context));
} else {
runAsyncWipe();
runAsyncWipe(context);
}
}
}
private void runAsyncWipe() {
private void runAsyncWipe(Context context) {
AsyncTask.execute(new Runnable() {
@Override
public void run() {
RecoverySystem.wipeEuiccData(
getContext(), PACKAGE_NAME_EUICC_DATA_MANAGEMENT_CALLBACK);
context, PACKAGE_NAME_EUICC_DATA_MANAGEMENT_CALLBACK);
}
});
}

View File

@@ -61,7 +61,9 @@ import com.android.settings.core.FeatureFlags;
import com.android.settings.core.SubSettingLauncher;
import com.android.settings.datausage.DataUsagePreference;
import com.android.settings.datausage.DataUsageUtils;
import com.android.settings.location.WifiScanningFragment;
import com.android.settings.search.BaseSearchIndexProvider;
import com.android.settings.utils.AnnotationSpan;
import com.android.settings.wifi.AddNetworkFragment;
import com.android.settings.wifi.AddWifiNetworkPreference;
import com.android.settings.wifi.ConfigureWifiEntryFragment;
@@ -79,6 +81,7 @@ import com.android.settingslib.RestrictedLockUtilsInternal;
import com.android.settingslib.search.Indexable;
import com.android.settingslib.search.SearchIndexable;
import com.android.settingslib.utils.ThreadUtils;
import com.android.settingslib.widget.FooterPreference;
import com.android.settingslib.widget.LayoutPreference;
import com.android.settingslib.wifi.LongPressWifiEntryPreference;
import com.android.settingslib.wifi.WifiSavedConfigUtils;
@@ -132,6 +135,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
@VisibleForTesting
static final String PREF_KEY_DATA_USAGE = "non_carrier_data_usage";
private static final String PREF_KEY_RESET_INTERNET = "resetting_your_internet";
private static final String PREF_KEY_WIFI_STATUS_MESSAGE = "wifi_status_message_footer";
private static final int REQUEST_CODE_WIFI_DPP_ENROLLEE_QR_CODE_SCANNER = 0;
@@ -231,6 +235,8 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
LayoutPreference mResetInternetPreference;
@VisibleForTesting
ConnectedEthernetNetworkController mConnectedEthernetNetworkController;
@VisibleForTesting
FooterPreference mWifiStatusMessagePreference;
/**
* Mobile networks list for provider model
@@ -305,6 +311,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
addNetworkMobileProviderController();
addConnectedEthernetNetworkController();
addWifiSwitchPreferenceController();
mWifiStatusMessagePreference = findPreference(PREF_KEY_WIFI_STATUS_MESSAGE);
}
private void updateAirplaneModeMsgPreference(boolean visible) {
@@ -717,6 +724,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
switch (wifiState) {
case WifiManager.WIFI_STATE_ENABLED:
setWifiScanMessage(/* isWifiEnabled */ true);
updateWifiEntryPreferences();
break;
@@ -732,6 +740,7 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
break;
case WifiManager.WIFI_STATE_DISABLED:
setWifiScanMessage(/* isWifiEnabled */ false);
removeConnectedWifiEntryPreference();
removeWifiEntryPreference();
setAdditionalSettingsSummaries();
@@ -741,6 +750,34 @@ public class NetworkProviderSettings extends RestrictedSettingsFragment
}
}
@VisibleForTesting
void setWifiScanMessage(boolean isWifiEnabled) {
final Context context = getContext();
if (context == null) {
return;
}
if (isWifiEnabled || !mWifiManager.isScanAlwaysAvailable()) {
mWifiStatusMessagePreference.setVisible(false);
return;
}
if (TextUtils.isEmpty(mWifiStatusMessagePreference.getTitle())) {
AnnotationSpan.LinkInfo info = new AnnotationSpan.LinkInfo(
AnnotationSpan.LinkInfo.DEFAULT_ANNOTATION,
v -> launchWifiScanningFragment());
CharSequence text = AnnotationSpan.linkify(
context.getText(R.string.wifi_scan_notify_message), info);
mWifiStatusMessagePreference.setTitle(text);
}
mWifiStatusMessagePreference.setVisible(true);
}
private void launchWifiScanningFragment() {
new SubSettingLauncher(getContext())
.setDestination(WifiScanningFragment.class.getName())
.setSourceMetricsCategory(SettingsEnums.SETTINGS_NETWORK_CATEGORY)
.launch();
}
@Override
public void onWifiEntriesChanged() {
if (mIsWifiEntryListStale) {

View File

@@ -25,7 +25,6 @@ import android.graphics.Paint;
import android.graphics.drawable.ShapeDrawable;
import android.graphics.drawable.shapes.OvalShape;
import android.os.Bundle;
import android.telephony.ServiceState;
import android.telephony.SubscriptionInfo;
import android.telephony.SubscriptionManager;
import android.telephony.TelephonyManager;
@@ -52,7 +51,6 @@ import com.android.settingslib.DeviceInfoUtils;
import com.google.common.collect.ImmutableMap;
import java.util.Arrays;
import java.util.List;
import java.util.Map;
@@ -180,8 +178,7 @@ public class RenameMobileNetworkDialogFragment extends InstrumentedDialogFragmen
final TextView operatorName = view.findViewById(R.id.operator_name_value);
mTelephonyManager = mTelephonyManager.createForSubscriptionId(mSubId);
final ServiceState serviceState = mTelephonyManager.getServiceState();
operatorName.setText(serviceState == null ? "" : serviceState.getOperatorAlphaLong());
operatorName.setText(info.getCarrierName());
final TextView phoneTitle = view.findViewById(R.id.number_label);
phoneTitle.setVisibility(info.isOpportunistic() ? View.GONE : View.VISIBLE);