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

Commit fd799860 authored by Lorenzo Colitti's avatar Lorenzo Colitti Committed by android-build-merger
Browse files

Merge "Allow passing in acceptUnvalidated without explicitlySelected" into...

Merge "Allow passing in acceptUnvalidated without explicitlySelected" into qt-dev am: e2fb127e am: e0348e5a
am: 3a19df07

Change-Id: I516f47609c552e8213c218ba9fc0f665fed4b63a
parents ced94c8a 3a19df07
Loading
Loading
Loading
Loading
+18 −1
Original line number Diff line number Diff line
@@ -433,7 +433,24 @@ public abstract class NetworkAgent extends Handler {
     * {@link #saveAcceptUnvalidated} to respect the user's choice.
     */
    public void explicitlySelected(boolean acceptUnvalidated) {
        queueOrSendMessage(EVENT_SET_EXPLICITLY_SELECTED, acceptUnvalidated ? 1 : 0, 0);
        explicitlySelected(true /* explicitlySelected */, acceptUnvalidated);
    }

    /**
     * Called by the bearer to indicate this network was manually selected by the user.
     * This should be called before the NetworkInfo is marked CONNECTED so that this
     * Network can be given special treatment at that time. If {@code acceptUnvalidated} is
     * {@code true}, then the system will switch to this network. If it is {@code false} and the
     * network cannot be validated, the system will ask the user whether to switch to this network.
     * If the user confirms and selects "don't ask again", then the system will call
     * {@link #saveAcceptUnvalidated} to persist the user's choice. Thus, if the transport ever
     * calls this method with {@code acceptUnvalidated} set to {@code false}, it must also implement
     * {@link #saveAcceptUnvalidated} to respect the user's choice.
     */
    public void explicitlySelected(boolean explicitlySelected, boolean acceptUnvalidated) {
        queueOrSendMessage(EVENT_SET_EXPLICITLY_SELECTED,
                explicitlySelected ? 1 : 0,
                acceptUnvalidated ? 1 : 0);
    }

    /**
+5 −5
Original line number Diff line number Diff line
@@ -2575,11 +2575,11 @@ public class ConnectivityService extends IConnectivityManager.Stub
                    break;
                }
                case NetworkAgent.EVENT_SET_EXPLICITLY_SELECTED: {
                    if (nai.everConnected && !nai.networkMisc.explicitlySelected) {
                        loge("ERROR: already-connected network explicitly selected.");
                    if (nai.everConnected) {
                        loge("ERROR: cannot call explicitlySelected on already-connected network");
                    }
                    nai.networkMisc.explicitlySelected = true;
                    nai.networkMisc.acceptUnvalidated = msg.arg1 == 1;
                    nai.networkMisc.explicitlySelected = (msg.arg1 == 1);
                    nai.networkMisc.acceptUnvalidated = (msg.arg1 == 1) && (msg.arg2 == 1);
                    // Mark the network as temporarily accepting partial connectivity so that it
                    // will be validated (and possibly become default) even if it only provides
                    // partial internet access. Note that if user connects to partial connectivity
@@ -2587,7 +2587,7 @@ public class ConnectivityService extends IConnectivityManager.Stub
                    // out of wifi coverage) and if the same wifi is available again, the device
                    // will auto connect to this wifi even though the wifi has "no internet".
                    // TODO: Evaluate using a separate setting in IpMemoryStore.
                    nai.networkMisc.acceptPartialConnectivity = msg.arg1 == 1;
                    nai.networkMisc.acceptPartialConnectivity = (msg.arg2 == 1);
                    break;
                }
                case NetworkAgent.EVENT_SOCKET_KEEPALIVE: {