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

Commit 1c0a86fc authored by fionaxu's avatar fionaxu
Browse files

reloading the current page on Network lost->avail

if suddenly lost network on captiveportal page, we didnt recover
gracefully when network become available. we should reload the current
page on network available.

Bug: 65041224
Test: Manaul
Change-Id: I356dbf73ef3ce9788883bf6561929d961c3a6888
parent 04d69537
Loading
Loading
Loading
Loading
+14 −3
Original line number Diff line number Diff line
@@ -82,6 +82,7 @@ public class CaptivePortalLoginActivity extends Activity {
    private MyWebViewClient mWebViewClient;
    private boolean mLaunchBrowser = false;
    private Thread mTestingThread = null;
    private boolean mReload = false;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
@@ -290,9 +291,13 @@ public class CaptivePortalLoginActivity extends Activity {
                mCm.bindProcessToNetwork(network);
                mNetwork = network;
                runOnUiThreadIfNotFinishing(() -> {
                    if (mReload) {
                        mWebView.reload();
                    } else {
                        // Start initial page load so WebView finishes loading proxy settings.
                        // Actual load of mUrl is initiated by MyWebViewClient.
                        mWebView.loadData("", "text/html", null);
                    }
                });
            }

@@ -305,6 +310,12 @@ public class CaptivePortalLoginActivity extends Activity {
                    mWebView.loadUrl(mUrl.toString());
                });
            }

            @Override
            public void onLost(Network lostNetwork) {
                if (DBG) logd("Network lost");
                mReload = true;
            }
        };
        logd("request Network for captive portal");
        mCm.requestNetwork(request, mNetworkCallback, NETWORK_REQUEST_TIMEOUT_MS);