Merge "[Passpointv2] Implement confirm dialog for passpoint forget button"
This commit is contained in:
committed by
Android (Google) Code Review
commit
a9308663c3
@@ -20,6 +20,7 @@ import static android.net.NetworkCapabilities.NET_CAPABILITY_VALIDATED;
|
||||
import static android.net.NetworkCapabilities.TRANSPORT_WIFI;
|
||||
|
||||
import android.app.Activity;
|
||||
import android.app.AlertDialog;
|
||||
import android.app.KeyguardManager;
|
||||
import android.app.settings.SettingsEnums;
|
||||
import android.content.BroadcastReceiver;
|
||||
@@ -45,7 +46,6 @@ import android.net.wifi.WifiInfo;
|
||||
import android.net.wifi.WifiManager;
|
||||
import android.os.Handler;
|
||||
import android.text.TextUtils;
|
||||
import android.util.FeatureFlagUtils;
|
||||
import android.util.Log;
|
||||
import android.widget.ImageView;
|
||||
import android.widget.Toast;
|
||||
@@ -61,6 +61,7 @@ import com.android.settings.R;
|
||||
import com.android.settings.Utils;
|
||||
import com.android.settings.core.FeatureFlags;
|
||||
import com.android.settings.core.PreferenceControllerMixin;
|
||||
import com.android.settings.development.featureflags.FeatureFlagPersistent;
|
||||
import com.android.settings.widget.EntityHeaderController;
|
||||
import com.android.settings.wifi.WifiDialog;
|
||||
import com.android.settings.wifi.WifiDialog.WifiDialogListener;
|
||||
@@ -568,6 +569,12 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
||||
mWifiManager.disableEphemeralNetwork(mWifiInfo.getSSID());
|
||||
} else if (mWifiConfig != null) {
|
||||
if (mWifiConfig.isPasspoint()) {
|
||||
// Post a dialog to confirm if user really want to forget the passpoint network.
|
||||
if (FeatureFlagPersistent.isEnabled(mContext, FeatureFlags.NETWORK_INTERNET_V2)) {
|
||||
showConfirmForgetDialog();
|
||||
return;
|
||||
}
|
||||
|
||||
mWifiManager.removePasspointConfiguration(mWifiConfig.FQDN);
|
||||
} else {
|
||||
mWifiManager.forget(mWifiConfig.networkId, null /* action listener */);
|
||||
@@ -578,6 +585,22 @@ public class WifiDetailPreferenceController extends AbstractPreferenceController
|
||||
mFragment.getActivity().finish();
|
||||
}
|
||||
|
||||
@VisibleForTesting
|
||||
protected void showConfirmForgetDialog() {
|
||||
final AlertDialog dialog = new AlertDialog.Builder(mContext)
|
||||
.setPositiveButton(R.string.forget, ((dialog1, which) -> {
|
||||
mWifiManager.removePasspointConfiguration(mWifiConfig.FQDN);
|
||||
mMetricsFeatureProvider.action(
|
||||
mFragment.getActivity(), SettingsEnums.ACTION_WIFI_FORGET);
|
||||
mFragment.getActivity().finish();
|
||||
}))
|
||||
.setNegativeButton(R.string.cancel, null /* listener */)
|
||||
.setTitle(R.string.wifi_forget_dialog_title)
|
||||
.setMessage(R.string.forget_passpoint_dialog_message)
|
||||
.create();
|
||||
dialog.show();
|
||||
}
|
||||
|
||||
/**
|
||||
* Show QR code to share the network represented by this preference.
|
||||
*/
|
||||
|
Reference in New Issue
Block a user