From f17463a9ea15a479376597f94f5d920bb8f4cc79 Mon Sep 17 00:00:00 2001 From: ManeraKai Date: Sun, 17 Apr 2022 15:27:21 +0300 Subject: Added latency test #134 --- src/pages/options/speedtest/speedtest.html | 125 +++++++++++++++++++++++++++++ src/pages/options/speedtest/speedtest.js | 36 ++++++++- 2 files changed, 159 insertions(+), 2 deletions(-) create mode 100644 src/pages/options/speedtest/speedtest.html (limited to 'src/pages/options/speedtest') diff --git a/src/pages/options/speedtest/speedtest.html b/src/pages/options/speedtest/speedtest.html new file mode 100644 index 00000000..50a195e2 --- /dev/null +++ b/src/pages/options/speedtest/speedtest.html @@ -0,0 +1,125 @@ + + + + + + + + General + + + + + +
+
+

Enable

+ +
+
+

Protocol

+ +
+
+
+
+
+

Default Instances

+
+
+
+
+

Custom Instances

+
+
+
+ + + + + +
+
+
+ + +
+
+
+

Default Instances

+
+
+
+
+

Custom Instances

+
+
+
+ + + + + +
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/src/pages/options/speedtest/speedtest.js b/src/pages/options/speedtest/speedtest.js index bcef4de3..077d6440 100644 --- a/src/pages/options/speedtest/speedtest.js +++ b/src/pages/options/speedtest/speedtest.js @@ -35,6 +35,7 @@ speedtestHelper.init().then(() => { protocolElement.value = protocol; changeProtocolSettings(protocol); + browser.storage.local.get("librespeedLatency").then(r => { commonHelper.processDefaultCustomInstances( 'librespeed', 'normal', @@ -43,8 +44,10 @@ speedtestHelper.init().then(() => { speedtestHelper.getLibrespeedNormalRedirectsChecks, speedtestHelper.setLibrespeedNormalRedirectsChecks, speedtestHelper.getLibrespeedNormalCustomRedirects, - speedtestHelper.setLibrespeedNormalCustomRedirects + speedtestHelper.setLibrespeedNormalCustomRedirects, + r.librespeedLatency, ); + }) commonHelper.processDefaultCustomInstances( 'librespeed', @@ -56,4 +59,33 @@ speedtestHelper.init().then(() => { speedtestHelper.getLibrespeedTorCustomRedirects, speedtestHelper.setLibrespeedTorCustomRedirects ) -}) \ No newline at end of file +}) + +let latencyElement = document.getElementById("latency"); +let latencyLabel = document.getElementById("latency-label"); +latencyElement.addEventListener("click", + async () => { + let reloadWindow = () => location.reload(); + latencyElement.addEventListener("click", reloadWindow); + await speedtestHelper.init(); + let redirects = speedtestHelper.getRedirects(); + const oldHtml = latencyLabel.innerHTML; + latencyLabel.innerHTML = '...'; + commonHelper.testLatency(latencyLabel, redirects.librespeed.normal).then(r => { + browser.storage.local.set({ librespeedLatency: r }); + latencyLabel.innerHTML = oldHtml; + commonHelper.processDefaultCustomInstances( + 'librespeed', + 'normal', + speedtestHelper, + document, + speedtestHelper.getLibrespeedNormalRedirectsChecks, + speedtestHelper.setLibrespeedNormalRedirectsChecks, + speedtestHelper.getLibrespeedNormalCustomRedirects, + speedtestHelper.setLibrespeedNormalCustomRedirects, + r, + ) + latencyElement.removeEventListener("click", reloadWindow) + }); + } +); \ No newline at end of file -- cgit 1.4.1