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

Commit 56bd6c33 authored by Lorenzo Colitti's avatar Lorenzo Colitti
Browse files

Address TODOs in WifiNoInternetDialog.

Bug: 20081183
Change-Id: I30a4f04ca892796a674ff0306aafaed485126092
parent b5c48a4c
Loading
Loading
Loading
Loading
+12 −9
Original line number Diff line number Diff line
@@ -36,6 +36,8 @@ import com.android.internal.app.AlertActivity;
import com.android.internal.app.AlertController;
import com.android.settings.R;

import static android.net.NetworkCapabilities.NET_CAPABILITY_VALIDATED;

public final class WifiNoInternetDialog extends AlertActivity implements
        DialogInterface.OnClickListener {
    private static final String TAG = "WifiNoInternetDialog";
@@ -67,14 +69,9 @@ public final class WifiNoInternetDialog extends AlertActivity implements

        // TODO: add a registerNetworkCallback(Network network, NetworkCallback networkCallback) and
        // simplify this.
        final NetworkRequest.Builder builder = new NetworkRequest.Builder();
        for (int i = 0; i < 256; i++) {
            try {
                builder.removeCapability(i);
            } catch (IllegalArgumentException e) {}
        }
        final NetworkRequest request = builder.build();
        final NetworkRequest request = new NetworkRequest.Builder().clearCapabilities().build();
        mNetworkCallback = new NetworkCallback() {
            @Override
            public void onLost(Network network) {
                // Close the dialog if the network disconnects.
                if (mNetwork.equals(network)) {
@@ -82,8 +79,14 @@ public final class WifiNoInternetDialog extends AlertActivity implements
                    finish();
                }
            }
            // TODO: implement onNetworkCapabilitiesChanged so we can close the dialog if the
            // network is now validated.
            @Override
            public void onCapabilitiesChanged(Network network, NetworkCapabilities nc) {
                // Close the dialog if the network validates.
                if (mNetwork.equals(network) && nc.hasCapability(NET_CAPABILITY_VALIDATED)) {
                    Log.d(TAG, "Network " + mNetwork + " validated");
                    finish();
                }
            }
        };

        mCM = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);