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/twitter/twitter.html | 227 +++++++++++++++++++++++++++++++++ src/pages/options/twitter/twitter.js | 53 ++++++-- 2 files changed, 270 insertions(+), 10 deletions(-) create mode 100644 src/pages/options/twitter/twitter.html (limited to 'src/pages/options/twitter') diff --git a/src/pages/options/twitter/twitter.html b/src/pages/options/twitter/twitter.html new file mode 100644 index 00000000..6d8e0e6f --- /dev/null +++ b/src/pages/options/twitter/twitter.html @@ -0,0 +1,227 @@ + + + + + + + + General + + + + + +
+
+

Enable

+ +
+
+

Protocol

+ +
+
+

Bypass "Open in Twitter"

+ +
+
+

Enable Custom Settings (will use cookies)

+ +
+
+
+
+

Display

+
+
+

Theme

+ +
+
+

Infinite scrolling (experimental, requires JavaScript)

+ +
+
+

Make profile sidebar stick to top

+ +
+
+

Support bidirectional text (makes clicking on tweets harder)

+ +
+
+

Hide tweet stats (replies, retweets, likes)

+ +
+
+

Hide profile banner

+ +
+
+

Hide pinned tweets

+ +
+
+

Hide tweet replies

+ +
+
+

Square profile pictures

+ +
+
+
+

Media

+
+
+

Enable mp4 video playback (only for gifs)

+ +
+
+

Enable hls video streaming (requires JavaScript)

+ +
+
+

Proxy video streaming through the server (might be slow)

+ +
+
+

Mute videos by default

+ +
+
+

Autoplay gifs

+ +
+
+
+
+

Default Instances

+
+
+
+
+

Custom Instances

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

Default Instances

+
+
+
+
+

Custom Instances

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

Default Instances

+
+
+
+
+

Custom Instances

+
+
+
+ + + + + +
+
+
+
+
+
+ + + \ No newline at end of file diff --git a/src/pages/options/twitter/twitter.js b/src/pages/options/twitter/twitter.js index b86fc197..4cb31643 100644 --- a/src/pages/options/twitter/twitter.js +++ b/src/pages/options/twitter/twitter.js @@ -93,16 +93,20 @@ function init() { muteVideos.checked = twitterHelper.getMuteVideos(); autoplayGifs.checked = twitterHelper.getAutoplayGifs(); - commonHelper.processDefaultCustomInstances( - 'nitter', - 'normal', - twitterHelper, - document, - twitterHelper.getNitterNormalRedirectsChecks, - twitterHelper.setNitterNormalRedirectsChecks, - twitterHelper.getNitterNormalCustomRedirects, - twitterHelper.setNitterNormalCustomRedirects - ) + browser.storage.local.get("nitterLatency").then(r => { + commonHelper.processDefaultCustomInstances( + 'nitter', + 'normal', + twitterHelper, + document, + twitterHelper.getNitterNormalRedirectsChecks, + twitterHelper.setNitterNormalRedirectsChecks, + twitterHelper.getNitterNormalCustomRedirects, + twitterHelper.setNitterNormalCustomRedirects, + r.nitterLatency, + ); + }); + commonHelper.processDefaultCustomInstances( 'nitter', 'tor', @@ -116,3 +120,32 @@ function init() { }); } init(); + +let latencyElement = document.getElementById("latency"); +let latencyLabel = document.getElementById("latency-label"); +latencyElement.addEventListener("click", + async () => { + let reloadWindow = () => location.reload(); + latencyElement.addEventListener("click", reloadWindow); + await twitterHelper.init(); + let redirects = twitterHelper.getRedirects(); + const oldHtml = latencyLabel.innerHTML; + latencyLabel.innerHTML = '...'; + commonHelper.testLatency(latencyLabel, redirects.nitter.normal).then(r => { + browser.storage.local.set({ nitterLatency: r }); + latencyLabel.innerHTML = oldHtml; + commonHelper.processDefaultCustomInstances( + 'nitter', + 'normal', + twitterHelper, + document, + twitterHelper.getNitterNormalRedirectsChecks, + twitterHelper.setNitterNormalRedirectsChecks, + twitterHelper.getNitterNormalCustomRedirects, + twitterHelper.setNitterNormalCustomRedirects, + r, + ) + latencyElement.removeEventListener("click", reloadWindow) + }); + } +); \ No newline at end of file -- cgit 1.4.1