Donate to e Foundation | Murena handsets with /e/OS | Own a part of Murena! Learn more

Commit 36b68df4 authored by Peter Qiu's avatar Peter Qiu
Browse files

wifi: allow manual connection to a Passpoint provided network

While connected to other WiFi network, a Passpoint AP with its
provider installed will shown as "<SSID> available via
<Provider Name>", since the installed provider contained
necessary credentials needed to connect to that AP.

This CL will trigger a connection to that AP when the user
taps on it for manual connection.

Bug: 36357280
Test: manual connecting to a Passpoint network while connected
      to other network

Change-Id: Idec440aa1606e80bcea56054e77ef2dc50a7ac93
parent 3c0d5ff3
Loading
Loading
Loading
Loading
+8 −1
Original line number Diff line number Diff line
@@ -516,7 +516,10 @@ public class WifiSettings extends RestrictedSettingsFragment
            if (mSelectedAccessPoint.isActive()) {
                return super.onPreferenceTreeClick(preference);
            }
            /** Bypass dialog and connect to unsecured or previously connected saved networks. */
            /**
             * Bypass dialog and connect to unsecured networks, or previously connected saved
             * networks, or Passpoint provided networks.
             */
            WifiConfiguration config = mSelectedAccessPoint.getConfig();
            if (mSelectedAccessPoint.getSecurity() == AccessPoint.SECURITY_NONE) {
                mSelectedAccessPoint.generateOpenNetworkConfig();
@@ -525,6 +528,10 @@ public class WifiSettings extends RestrictedSettingsFragment
                    && config.getNetworkSelectionStatus() != null
                    && config.getNetworkSelectionStatus().getHasEverConnected()) {
                connect(config, true /* isSavedNetwork */);
            } else if (mSelectedAccessPoint.isPasspoint()) {
                // Access point provided by an installed Passpoint provider, connect using
                // the associated config.
                connect(config, true /* isSavedNetwork */);
            } else {
                showDialog(mSelectedAccessPoint, WifiConfigUiBase.MODE_CONNECT);
            }