summaryrefslogtreecommitdiff
path: root/data/extensions
diff options
context:
space:
mode:
Diffstat (limited to 'data/extensions')
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/META-INF/manifest.mf175
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.rsabin4338 -> 4359 bytes
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.sf5
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.css7
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.js3
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.json14
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/install.pngbin3973 -> 1104 bytes
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/ip.pngbin0 -> 857 bytes
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/reload.pngbin2281 -> 2207 bytes
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/support.pngbin4607 -> 1044 bytes
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.css44
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.html7
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.js20
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/lib/chrome/chrome.js24
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/lib/common.js106
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/lib/config.js33
-rw-r--r--data/extensions/tortm-browser-button@jeremybenthum/manifest.json6
17 files changed, 231 insertions, 213 deletions
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/META-INF/manifest.mf b/data/extensions/tortm-browser-button@jeremybenthum/META-INF/manifest.mf
index fef4086..d424b56 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/META-INF/manifest.mf
+++ b/data/extensions/tortm-browser-button@jeremybenthum/META-INF/manifest.mf
@@ -1,218 +1,197 @@
Manifest-Version: 1.0
Name: manifest.json
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: gGBvm9+JkiBGyUC6kXUk9g==
-SHA1-Digest: kNHJNgsp2/IhX+S5EER0niI8nVI=
-SHA256-Digest: S6RdZLQ8tSamLp9GFThjSiqT7iV1UvzVkRxsDBK9Yac=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: V+IUNvf/AnE/bZv5Lbnm/CUIzTM=
+SHA256-Digest: cKqLhBxA+/me/e3agjoVNlqzp0wLfgPjtq65by3oTaI=
Name: data/icons/128.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: JpPJ4JpU2FcYAuS9q4pcbA==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: 93I88LexoD1hgfreKoyhV5WMlRw=
SHA256-Digest: tE6WrRu12BbqH4HmD4NWVXean+U4+7unUz0UmetN3K4=
Name: data/icons/16.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: 05P476qWkeRD2tJIZ3wHlg==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: WFv80V681ND1VV958kBA1y6PjOA=
SHA256-Digest: 6VR+kEhGc8aIgnj7jmvtCq/BTutMNcizsCKc8OgI7yk=
Name: data/icons/32.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: cIyPwlPe6ImXWN9KbTUDXw==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: TNeyTDhz+nsDuElFBEx390swkJs=
SHA256-Digest: 3qXvS80sYjoKNCYixjnLdKeIrf4BVgriBPgG3UEP49A=
Name: data/icons/48.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: 3HKLk2HFYpUAjkfFhQMZ0Q==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: mhnrzrhJcQr7Ps3cx+Xo/HxT2o0=
SHA256-Digest: SbQLBp1TuYXM3ryO3MsU8xW8zAaV+BWzHqvmHCilIbo=
Name: data/icons/64.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: 3qt9F6JjzAsVeaqI8XEOAA==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: 6CPKzMpnY4yQgfpKlzJSC80MHlo=
SHA256-Digest: 25gQHIbDQZfofRJmoh8FKLW/8J5IZ8B7yYhQHM+8/JE=
Name: data/icons/CHECK/128.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: D8kU9KUq3CN1gQx7L9hZ4g==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: eiVPuPV7i7bgETL3yTtKkEzeK6Y=
SHA256-Digest: U3qPy9zZLCYsM2wtbCeBoWJcNoq7OQ5wlZDAqnxn1YA=
Name: data/icons/CHECK/16.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: AJd8XKJ+9T1YNVFRfXo5pw==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: c0foAU6nLARQk28kmzrPMrnRj6g=
SHA256-Digest: /A3c5KhLKF88znB9pdeAxVMkf7Pbyg3hVW+fJLRcKDo=
Name: data/icons/CHECK/32.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: q6RE+4s8QTEMOI0TuY12xg==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: i8lN7tNFErTXTfunq7PW44BTquo=
SHA256-Digest: GGM8LU4ruq2R3hrUNNmlLUJpVLGQqyeQfp58dJ72QpM=
Name: data/icons/CHECK/48.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: APSu1C+NeIITygLOWux/9w==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: 1vc3cx3fKQ8rgKQmxvlsvzBS4XA=
SHA256-Digest: kIuIYbD0yDUSHI45KOkD6IpZbeRqXC8q+n7GmE3J9Ow=
Name: data/icons/CHECK/64.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: j3Ho+C7ovmU7NlHIwIR6Pw==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: mc3p1OtoaNDHFjJmNDnAesR8Hic=
SHA256-Digest: 6LPVe2TwO2eRLHYVcbNn8DSQ6x9vW0aR+8vLl3lrffE=
Name: data/icons/OFF/128.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: Vmxm1Wjx//+XaQXovvGhUw==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: 2YlToA6/FchraR5oDSU/mCYSM0I=
SHA256-Digest: 8FlmC6DSb1dREOJ0uxfYJzW7uGfH7sSA4TAphKQ76gg=
Name: data/icons/OFF/16.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: E6azVHzKW2xX6IyCS71qEA==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: xDxKCuUkBRcvYPtLdC+Bbv5eNy8=
SHA256-Digest: cbRAWfcl5up6VpChuYQDQlZCue1VV6BObQTAFeOI92I=
Name: data/icons/OFF/32.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: SUA0OPjM1PmM+/KJcrQ0SA==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: 9P9f5nRYzv48hc8rp222t93lU0k=
SHA256-Digest: NgU1FzX0jF3cIcAfpnaSkcMh3N4oRfmxnmP7pzpI/+s=
Name: data/icons/OFF/48.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: yjitVTSFe8BghNPLUcNnog==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: SIhhf219ZvRCdUCsjpmHixfEbdA=
SHA256-Digest: OIJNMKRiJmeBtOgWh0c1Xx6FDr4mjuFgE5ep8Uc3cQs=
Name: data/icons/OFF/64.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: zbov11OtfeI4aOkM7kjP4A==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: aeYZk8tAIGNJZZ86kGncq0zwIAk=
SHA256-Digest: jOahYvjwt7uvNYDa9jE9AwKbJeVr0D4eVh3NEldahtA=
Name: data/icons/ON/128.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: uXOLTTTxiD+TviNHJGJdzQ==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: 5sO+BvPASD2nYqZWEIvmADmxS7E=
SHA256-Digest: GmOidPVxEEZaS1UUrvTHYhReZ+DZ1a9f2/N4dXNQ4D4=
Name: data/icons/ON/16.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: fTcazuYdxKeGP5b0HfTewQ==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: ubD0AdvB+ANRX6o3xghjKmPteRw=
SHA256-Digest: T8grvY6Tf1OQeiM/AanugRnAu13zv3c7CpINWfjFKE0=
Name: data/icons/ON/32.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: AS3wpm19MhsJN3Sh9X5Z5g==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: t7pGp1A+k3PWrgqZqs1KcAUOo5c=
SHA256-Digest: AyZyTMr1otpeI/PHm09nA53PFAG1j902J2KkDHNEbdE=
Name: data/icons/ON/48.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: k0bkgij9I8chtm+cSHSWqA==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: LFLPbA6EZs+di+d9nySlWzwPTmk=
SHA256-Digest: Z2pAWaV/AUYz0E6tFuK/1TB09AdnhvVTcEGepS8tIM8=
Name: data/icons/ON/64.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: NqXguAywfkki3elA2G6sWw==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: MO+Drz2UFW1rL/oCdP+VBeaviFQ=
SHA256-Digest: /+4/0+Q29MiPnTwRWHdJCwD0DW2hCKU2/OO/PZyrjEw=
Name: data/popup/popup.css
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: AwoflNl7okFlQF93Lf4KEQ==
-SHA1-Digest: tsrPct4YjEh/uIAKb2ALe2fcIc0=
-SHA256-Digest: 3ORrulkQzJ3YIuO1ZGzaVhQifjO0LA1J4tUFVN2ZYco=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: nW5JPVWO8FhjBWwjqgB6fzoWR48=
+SHA256-Digest: 6epb7Bg9BYXtLNUaYJa9ztNjd+P2g6MR2FoJuQI0IlU=
Name: data/popup/popup.html
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: fr3CyFUYY2vIclL9D9wJOw==
-SHA1-Digest: VnODIa3MISfxHTLmt5kAVeDv/+c=
-SHA256-Digest: oKQgSWiFteD6pynbmvnog/VI3H7cjlz9uuHVg+eXDSA=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: fO+VVPxy8l9YokSHzJVsRLJkuIo=
+SHA256-Digest: N7UYb1FMJrPVU7SRYO9PvwtgAndlfAgDkk+Qmjv10OM=
Name: data/popup/popup.js
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: VrOHq88KsZmhJVLHSz9vrA==
-SHA1-Digest: 4F9TirebqWhzRA/d49vKCbYyTQE=
-SHA256-Digest: zJ+wZNGgEcsiSjrL8zykvsRCS6Sjm15EcD3PhH9ouVM=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: J4CZ+OckL6AC60utoIBv2/0VGgY=
+SHA256-Digest: kwnlzLK+kQ2aVA9TMrXVWTGDCuJ9EaWLym7JIE0UUXM=
Name: data/popup/explore/explore.css
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: +1juR96F5tSsiHonApi9qg==
-SHA1-Digest: gSUrxuQOgDkxFV/A/17Gsz4QhdY=
-SHA256-Digest: HWCkA7Z9mvYy+mza3c1NMuedxOFaetZ/x9TryNMFKvA=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: umZvuxafn7BhlrT9q6s/NU2GDOw=
+SHA256-Digest: 04XTj78rPashGu1Pkx1y1S2lkuEdGJUtz/OHaoj9AO0=
Name: data/popup/explore/explore.js
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: UM08EGo5d6qYJJilMPG0Hw==
-SHA1-Digest: oFExHCb6yRFKvCXRX1fvsyz9Uw4=
-SHA256-Digest: 3v629PgnzXge2u2pz1WXqe/yu0lGE/YNvYhgqcXCj48=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: Py8llWHvD5oih/EFZZNvu/IxDv0=
+SHA256-Digest: hgSGxpG7aDu0ni4rWQ0yc5ZHpmhVDTheWKAbZEkolFw=
Name: data/popup/explore/explore.json
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: xWxAwbuPF13Yc42DZrBrMA==
-SHA1-Digest: Jnwz4yqNUGP+khQVJj9XViL+cDs=
-SHA256-Digest: WQtHUPEZfCsjsbq/LEWUCC7q4HPmArwvwmNvm13PMUk=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: NZBGOiVSHIWKRwyce0g1mxvn/Aw=
+SHA256-Digest: Scoy+Iuz+TfW8hcbctp0kThocmE3Ti+Qkwe7MQnghKY=
Name: data/popup/icons/check.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: 9jmSrZT2ZeaKm/OnSsnYYg==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: xO6PMc5SfU0X/p4lwo6lGC2JnsI=
SHA256-Digest: ZBbbaLdEDTbvabulVrxyupcMqqm1H7RSMmhKfgnvtnU=
Name: data/popup/icons/install.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: Q4MStqgKY+yl17VWJKtqlQ==
-SHA1-Digest: /cVbJCxpPKjkAjgYk3A3753DqWM=
-SHA256-Digest: TIMIjE5DFcYqmmwW8G3LtV++0HVy1Rw3U2lJ5sAGv2s=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: dkC99cH8qiR5Y4cgwgA6MKVFk1k=
+SHA256-Digest: 2kA8p+0BP9ebBdTUY45ou4NdUOftxOAzreWp8PRGKhQ=
+
+Name: data/popup/icons/ip.png
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: fg9ybnJxmzdxeGcoOgZmT53WxVg=
+SHA256-Digest: 7NTmGTTU1McBkWcYh4ERWD9vWOwulK3Ny9BkKfAGNT0=
Name: data/popup/icons/reload.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: 1OkkvuRl17MwSkurZC+nZg==
-SHA1-Digest: j7k2wjyP56fYsoYHqCZtAxAzH+8=
-SHA256-Digest: bXVoq9LLffDpOVOE/clGYrgLaZVTaTYwjz/4wmrLfy8=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: pS/DiUByE/45UOmjHbjrdlu7wXk=
+SHA256-Digest: oQZYYWo91HAQVB8BJIbNe7QwpiqCs/beYuorhRsSgZ8=
Name: data/popup/icons/support.png
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: 3QSR6Tt/apbToFZNpn7+wA==
-SHA1-Digest: duMJd5BRwn/cB6HijYtIOtmCWjE=
-SHA256-Digest: /7jC53oICGsmkNQuofi5NdGcwPanQmyiNVxIHIdhR/U=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: CQckYA/PRtkFwp/fku1NGY2RLWg=
+SHA256-Digest: VqoScop6+sKXU0eLlDPwa2aSrX79uUP1vN9/vlk76uw=
Name: lib/common.js
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: yc/hJn4Nh6+++0mSV1zRMQ==
-SHA1-Digest: EQisWa93fPVu29Xdx0QZPuc/P84=
-SHA256-Digest: vRab2ozBzrks75ALwR7m/gpa07HQpn2wVx+8QeYDY18=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: Bkv6X6sbiSB3/iXCM3CxW3bf3Mg=
+SHA256-Digest: qADTsiEbjwXfd/Xc3bH8VelUvGx4Cqlr0prMtLXP8Uo=
Name: lib/config.js
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: Q/a3j9krS3VNZTPYitgLwg==
-SHA1-Digest: 0uHhS9Fn6vDI5WdNLVQPl3xFXJA=
-SHA256-Digest: 7lYi5HuvHj0Zbr/y+KDt9777CwEsAqI0pLHCeP59xR4=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: EZ0ikKOLlHFJYSvZ+hoBYRunGeQ=
+SHA256-Digest: WXycIzkSIL8HddxqLX7WLC8c/agYPg+EUZ2WbxbfjLs=
Name: lib/proxy.js
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: e82v+unfZSakdwqOvAhHlQ==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: 4v2X/afLFhFDKBvLDi4KeEV9KEc=
SHA256-Digest: HLm4Vo/1mT6z7gdzr5UQRLQSPEOvf3asqKP8R0aIFsY=
Name: lib/chrome/background.html
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: Lp4NcR//zN+TrduYIpwMAw==
+Digest-Algorithms: SHA1 SHA256
SHA1-Digest: csd3attFBm8wL87EeHNeOEMzN3s=
SHA256-Digest: v1+fkVNX+9Ad6z1v5DwZtr1sb1FiIgpop3GsZYRU9Zw=
Name: lib/chrome/chrome.js
-Digest-Algorithms: MD5 SHA1 SHA256
-MD5-Digest: sMagiFR8gBn0VI8HUUQEjQ==
-SHA1-Digest: PWybcT+8J46CiOa/VEp7TTFtsRY=
-SHA256-Digest: cXTjYojMOOEb8jaMHJrYMcNNsIMIkwQD2nabdHT4+J8=
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: yso0w/0n6kaRs48WZz7st2hIcS8=
+SHA256-Digest: TREVYRsUu3CZR2m3AhFn5bK1J7EnP1HopreTGOaGfZI=
+
+Name: META-INF/cose.manifest
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: ZDcQUM/y8vCCXZufW9CEHHwxh9Q=
+SHA256-Digest: ZX4YdDqtgqJATSYvfQMYr/YdqSqoU4rv8xzNH7CPt6k=
+
+Name: META-INF/cose.sig
+Digest-Algorithms: SHA1 SHA256
+SHA1-Digest: TppDG3cQDtXqvULEI0s21HRPjWo=
+SHA256-Digest: SKd6NkJckLYWWxV+1myEjnlfp1hOAIZtYvMuzUqTqH8=
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.rsa b/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.rsa
index e459195..bcaa5a9 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.rsa
+++ b/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.rsa
Binary files differ
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.sf b/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.sf
index d3c94fc..682d9d3 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.sf
+++ b/data/extensions/tortm-browser-button@jeremybenthum/META-INF/mozilla.sf
@@ -1,5 +1,4 @@
Signature-Version: 1.0
-MD5-Digest-Manifest: VzAnOviqiE/5O4VBcT45PQ==
-SHA1-Digest-Manifest: xAc0oYcOhmsYOB/2pvNmcBbBaHU=
-SHA256-Digest-Manifest: YHFb4MfEM8dTgH/uU4vFwRDC9q7aaLdZHbdYYFQA9FI=
+SHA1-Digest-Manifest: seq4Td9srnHJOozZfwwELV/IQ9o=
+SHA256-Digest-Manifest: nSXJeuo0ji0oY5LbVsRl7q0aSe+Rx+CoWMDCSClOMfM=
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.css b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.css
index 42a12ad..0c8915e 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.css
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.css
@@ -42,13 +42,13 @@
#explore .explore {
right: 0;
margin: 0;
- padding: 0 7px;
- font-size: 14px;
+ padding: 0 3px;
+ font-size: 12px;
cursor: pointer;
z-index: 1000000;
line-height: 17px;
position: absolute;
- color: rgba(0,0,0,0.6);
+ color: rgba(0,0,0,0.5);
}
#explore .close {
@@ -94,6 +94,7 @@
#explore .name {
padding: 0;
+ font-size: 12px;
overflow: hidden;
margin: 0 0 0 5px;
font-weight: normal;
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.js b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.js
index 339ba0d..7c19bb6 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.js
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.js
@@ -74,8 +74,7 @@
table.appendChild(tr);
root.appendChild(table);
/* */
- const n = Math.floor(parseInt(window.getComputedStyle(document.body).width) / 151) || 3;
- json.slice(0, (n > 5 ? 5 : n)).forEach(({id, title}, index) => {
+ json.slice(0, 4).forEach(({id, title}, index) => {
if (id && title) {
const a = document.createElement('a');
const td = document.createElement('td');
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.json b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.json
index 1d65463..aa0b7ff 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.json
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/explore/explore.json
@@ -2,7 +2,19 @@
{"id": "smart-https", "title": "Smart HTTPS"},
{"id": "cache-cleaner", "title": "Cache Cleaner"},
{"id": "webrtc-control", "title": "WebRTC Control"},
+ {"id": "webapi-blocker", "title": "WebAPI Blocker"},
+ {"id": "cookie-switch", "title": "Cookie Switch ON|OFF"},
{"id": "policy-control-wext", "title": "Policy Control"},
+ {"id": "popup-blocking", "title": "Popup Blocker (Lite)"},
{"id": "privacy-guard", "title": "Privacy Guard & Manager"},
- {"id": "block-miners", "title": "NoMiner - Block Coin Miners"}
+ {"id": "restrict-to-domain", "title": "Restrict to Domain"},
+ {"id": "font-defender", "title": "Font Fingerprint Defender"},
+ {"id": "block-miners", "title": "NoMiner - Block Coin Miners"},
+ {"id": "webgl-defender", "title": "WebGL Fingerprint Defender"},
+ {"id": "canvas-defender", "title": "Canvas Fingerprint Defender"},
+ {"id": "change-timezone", "title": "Change Timezone (Time Shift)"},
+ {"id": "custom-useragent-string", "title": "Custom UserAgent String"},
+ {"id": "change-geolocation", "title": "Change Geolocation (Location Guard)"},
+ {"id": "audiocontext-defender", "title": "AudioContext Fingerprint Defender"},
+ {"id": "access-control-allow-origin", "title": "Allow CORS: Access-Control-Allow-Origin"}
]
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/install.png b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/install.png
index 7fb7136..d0236d4 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/install.png
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/install.png
Binary files differ
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/ip.png b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/ip.png
new file mode 100644
index 0000000..bfcf206
--- /dev/null
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/ip.png
Binary files differ
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/reload.png b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/reload.png
index 71bfc58..0215a70 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/reload.png
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/reload.png
Binary files differ
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/support.png b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/support.png
index fb00268..a425000 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/support.png
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/icons/support.png
Binary files differ
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.css b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.css
index f8b8720..7de66bb 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.css
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.css
@@ -1,8 +1,8 @@
body {
border: 0;
margin: 0;
- padding: 0;
- width: 455px;
+ width: 460px;
+ padding: 0 1px;
overflow: hidden;
}
@@ -17,10 +17,12 @@ table tr td {
p {
padding: 10px;
- margin: 3px 0;
color: #7c4698;
+ margin: 5px 0 0 0;
+ user-select: none;
text-align: center;
- border-bottom: solid 1px rgba(0,0,0,0.1);
+ -moz-user-select: none;
+ -webkit-user-select: none;
}
.content {
@@ -43,27 +45,30 @@ p {
height: 36px;
border-left: 0;
border-right: 0;
- border-top: solid 1px rgba(0,0,0,0.1);
- border-bottom: solid 1px rgba(0,0,0,0.1);
+ margin-top: 5px;
+ border-top: solid 1px rgba(0,0,0,0.05);
+ border-bottom: solid 1px rgba(0,0,0,0.05);
}
+#ip {background: url("icons/ip.png") no-repeat center center}
#check {background: url("icons/check.png") no-repeat center center}
#reload {background: url("icons/reload.png") no-repeat center center}
#support {background: url("icons/support.png") no-repeat center center}
#install {background: url("icons/install.png") no-repeat center center}
-#check, #support, #install, #reload {
- background-size: 22px;
+#ip, #check, #support, #install, #reload {
+ background-size: 14px;
cursor: pointer;
- width: 42px;
+ width: 32px;
}
#status {
height: 36px;
color: #58316b;
- font-weight: bold;
+ font-size: 12px;
user-select: none;
text-align: center;
+ font-family: monospace;
}
#ON, #OFF {
@@ -74,16 +79,24 @@ p {
#ON {background: url("../icons/ON/128.png") no-repeat center center}
#OFF {background: url("../icons/OFF/128.png") no-repeat center center}
-#ON[type="active"], #OFF[type="active"] {border-bottom: solid 1px #7c4698}
-#ON, #OFF {background-size: 64px}
+
+#ON[type="active"] {border-bottom: solid 1px #7c4698}
+#OFF[type="active"] {border-bottom: solid 1px #a8a8a8}
+
+#ON, #OFF {background-size: 52px}
#whitelist {
- border: 0;
- height: 60px;
+ color: #333;
+ height: 72px;
margin: 0 auto;
- width: calc(100% - 10px);
+ font-size: 12px;
+ padding: 1px 5px;
+ font-family: monospace;
+ width: calc(100% - 20px);
+ border: solid 1px rgba(0,0,0,0.1);
}
+#ip:hover,
#ON:hover,
#OFF:hover,
#check:hover,
@@ -93,6 +106,7 @@ p {
background-color: rgba(0,0,0,0.05) !important;
}
+#ip:active,
#ON:active,
#OFF:active,
#check:active,
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.html b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.html
index 2a49fbc..e087815 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.html
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.html
@@ -19,10 +19,11 @@
<table class="footer">
<tr>
<td id="status">Onion Browser Button</td>
- <td id="install" title="Open github repo to get TOR patch files"></td>
<td id="reload" title="Reload current tab"></td>
- <td id="check" title="Check tor connection via: check.torproject.org"></td>
- <td id="support" title="Open support page"></td>
+ <td id="install" title="Download TOR patch files"></td>
+ <td id="check" title="Check tor connection"></td>
+ <td id="ip" title="What is my IP address"></td>
+ <td id="support" title="Support page"></td>
</tr>
</table>
</td>
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.js b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.js
index ff27303..81bcabb 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.js
+++ b/data/extensions/tortm-browser-button@jeremybenthum/data/popup/popup.js
@@ -1,33 +1,33 @@
var background = (function () {
- var _tmp = {};
+ var tmp = {};
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
- for (var id in _tmp) {
- if (_tmp[id] && (typeof _tmp[id] === "function")) {
+ for (var id in tmp) {
+ if (tmp[id] && (typeof tmp[id] === "function")) {
if (request.path == 'background-to-popup') {
- if (request.method === id) _tmp[id](request.data);
+ if (request.method === id) tmp[id](request.data);
}
}
}
});
/* */
return {
- "receive": function (id, callback) {_tmp[id] = callback},
+ "receive": function (id, callback) {tmp[id] = callback},
"send": function (id, data) {chrome.runtime.sendMessage({"path": 'popup-to-background', "method": id, "data": data})}
}
})();
var load = function () {
var whitelist = document.getElementById("whitelist");
- document.addEventListener("click", function (e) {
- var id = e.target ? e.target.getAttribute("id") : null;
- if (id && id !== "whitelist") background.send("popup-data", {"name": id});
- });
- /* */
whitelist.addEventListener("change", function (e) {
var value = e.target ? e.target.value : '';
background.send("popup-data", {"name": "bypassList", "whitelist": value});
});
/* */
+ document.addEventListener("click", function (e) {
+ var id = e.target ? e.target.getAttribute("id") : null;
+ if (id && id !== "whitelist") background.send("popup-data", {"name": id});
+ });
+ /* */
background.send("load");
window.removeEventListener("load", load, false);
};
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/lib/chrome/chrome.js b/data/extensions/tortm-browser-button@jeremybenthum/lib/chrome/chrome.js
index ebb58e9..805e525 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/lib/chrome/chrome.js
+++ b/data/extensions/tortm-browser-button@jeremybenthum/lib/chrome/chrome.js
@@ -3,13 +3,25 @@ var app = {};
app.button = {set icon (o) {chrome.browserAction.setIcon(o)}};
app.version = function () {return chrome.runtime.getManifest().version};
app.homepage = function () {return chrome.runtime.getManifest().homepage_url};
-if (chrome.runtime.setUninstallURL) chrome.runtime.setUninstallURL(app.homepage() + "?v=" + app.version() + "&type=uninstall", function () {});
+chrome.runtime.setUninstallURL(app.homepage() + "?v=" + app.version() + "&type=uninstall", function () {});
app.tab = {
"reload": function (url) {chrome.tabs.reload(function () {})},
"open": function (url) {chrome.tabs.create({"url": url, "active": true})}
};
+chrome.runtime.onInstalled.addListener(function (e) {
+ window.setTimeout(function () {
+ var previous = e.previousVersion !== undefined && e.previousVersion !== app.version();
+ var doupdate = previous && parseInt((Date.now() - config.welcome.lastupdate) / (24 * 3600 * 1000)) > 45;
+ if (e.reason === "install" || (e.reason === "update" && doupdate)) {
+ var parameter = (e.previousVersion ? "&p=" + e.previousVersion : '') + "&type=" + e.reason;
+ app.tab.open(app.homepage() + "?v=" + app.version() + parameter);
+ config.welcome.lastupdate = Date.now();
+ }
+ }, 3000);
+});
+
app.storage = (function () {
var objs = {};
window.setTimeout(function () {
@@ -33,19 +45,19 @@ app.storage = (function () {
})();
app.popup = (function () {
- var _tmp = {};
+ var tmp = {};
chrome.runtime.onMessage.addListener(function (request, sender, sendResponse) {
- for (var id in _tmp) {
- if (_tmp[id] && (typeof _tmp[id] === "function")) {
+ for (var id in tmp) {
+ if (tmp[id] && (typeof tmp[id] === "function")) {
if (request.path === 'popup-to-background') {
- if (request.method === id) _tmp[id](request.data);
+ if (request.method === id) tmp[id](request.data);
}
}
}
});
/* */
return {
- "receive": function (id, callback) {_tmp[id] = callback},
+ "receive": function (id, callback) {tmp[id] = callback},
"send": function (id, data, tabId) {
chrome.runtime.sendMessage({"path": 'background-to-popup', "method": id, "data": data});
}
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/lib/common.js b/data/extensions/tortm-browser-button@jeremybenthum/lib/common.js
index ae1ed5a..7d95722 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/lib/common.js
+++ b/data/extensions/tortm-browser-button@jeremybenthum/lib/common.js
@@ -1,88 +1,86 @@
-window.setTimeout(function () {
- var version = config.welcome.version;
- if (!version) {
-// app.tab.open(app.homepage() + "?v=" + app.version() + "&type=install");
- config.welcome.version = app.version();
- }
-}, 3000);
-
-var popupsend = function () {
- tor.icon(tor.id);
- app.popup.send("tor-data", {
- "id": tor.id,
- "log": tor.log,
- "whitelist": config.addon.whitelist
- });
-};
-
-var setproxy = function (callback) {
- if (tor.id === "OFF") chrome.proxy.settings.set({"scope": "regular", "value": {"mode": "system"}}, callback);
- else chrome.proxy.settings.set({
- "scope": "regular",
- "value": {
- "mode": "fixed_servers",
- "rules": {
- "bypassList": tor.bypassList,
- "singleProxy": {"scheme": "socks5", "host": "127.0.0.1", "port": 9050}
- }
+var core = {
+ "popup": {
+ "send": function () {
+ tor.icon(tor.id);
+ app.popup.send("tor-data", {
+ "id": tor.id,
+ "log": tor.log,
+ "whitelist": config.addon.whitelist
+ });
+ }
+ },
+ "apply": {
+ "proxy": function (callback) {
+ if (tor.id === "OFF") chrome.proxy.settings.set({"scope": "regular", "value": {"mode": "system"}}, callback);
+ else chrome.proxy.settings.set({
+ "scope": "regular",
+ "value": {
+ "mode": "fixed_servers",
+ "rules": {
+ "bypassList": tor.bypassList,
+ "singleProxy": {"scheme": "socks5", "host": "127.0.0.1", "port": 9050}
+ }
+ }
+ }, callback);
}
- }, callback);
+ }
};
var tor = {
"id": "OFF",
"bypassList": [],
- "log": "Tor Browser Button",
- "update": function () {
- if (config.addon.state === "ON") {
- tor.once(function () {
- var url = config.addon.check + "?t=" + new Date().getTime() + "&r=" + Math.round(Math.random() * 10000);
- config.request(url, function (e) {
- if (e === "ok") config.addon.state === "ON" ? tor.start() : tor.stop();
- else {
- tor.stop();
- config.notifications.create("TOR is NOT running. Please connect your computer to TOR network and try again.");
- }
- });
- });
- } else tor.stop();
- },
+ "log": "Onion Browser Button",
"stop": function () {
tor.id = "OFF";
tor.log = "TOR proxy is disabled";
- setproxy(popupsend);
+ core.apply.proxy(core.popup.send);
},
"start": function () {
tor.id = "ON";
tor.log = "Connected to 127.0.0.1:9050";
config.notifications.create("TOR is running. Connected to 127.0.0.1:9050");
tor.bypassList = config.addon.whitelist ? config.addon.whitelist.split(',') : [];
- setproxy(popupsend);
+ core.apply.proxy(core.popup.send);
},
"once": function (callback) {
tor.id = "CHECK";
tor.log = "Checking tor proxy connection...";
tor.bypassList = config.addon.whitelist ? config.addon.whitelist.split(',') : [];
- setproxy(function () {window.setTimeout(function () {callback(true)}, 300)});
- popupsend();
+ core.apply.proxy(function () {window.setTimeout(function () {callback(true)}, 300)});
+ core.popup.send();
},
"icon": function (state) {
app.button.icon = {
"path": {
- "16": '../../data/icons/' + state + '/16.png',
- "32": '../../data/icons/' + state + '/32.png',
- "48": '../../data/icons/' + state + '/48.png',
- "64": '../../data/icons/' + state + '/64.png'
+ "16": "../../data/icons/" + (state ? state + "/" : '') + "16.png",
+ "32": "../../data/icons/" + (state ? state + "/" : '') + "32.png",
+ "48": "../../data/icons/" + (state ? state + "/" : '') + "48.png",
+ "64": "../../data/icons/" + (state ? state + "/" : '') + "64.png"
}
};
+ },
+ "update": function () {
+ if (config.addon.state === "ON") {
+ tor.once(function () {
+ var url = config.url.tor + "?t=" + new Date().getTime() + "&r=" + Math.round(Math.random() * 10000);
+ config.request(url, function (e) {
+ if (e === "ok") config.addon.state === "ON" ? tor.start() : tor.stop();
+ else {
+ tor.stop();
+ config.notifications.create("TOR is NOT running. Please connect your computer to TOR network and try again.");
+ }
+ });
+ });
+ } else tor.stop();
}
};
app.popup.receive("popup-data", function (e) {
if (e.name === "reload") app.tab.reload();
+ if (e.name === "ip") app.tab.open(config.url.ip);
+ if (e.name === "check") app.tab.open(config.url.tor);
if (e.name === "support") app.tab.open(app.homepage());
- if (e.name === "check") app.tab.open(config.addon.check);
- if (e.name === "install") app.tab.open(config.addon.github);
+ if (e.name === "install") app.tab.open(config.url.github);
if (e.name === "bypassList") {
config.addon.whitelist = e.whitelist;
tor.update();
@@ -94,4 +92,4 @@ app.popup.receive("popup-data", function (e) {
});
window.setTimeout(tor.update, 0);
-app.popup.receive("load", popupsend);
+app.popup.receive("load", core.popup.send);
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/lib/config.js b/data/extensions/tortm-browser-button@jeremybenthum/lib/config.js
index 721a1cf..7d0a801 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/lib/config.js
+++ b/data/extensions/tortm-browser-button@jeremybenthum/lib/config.js
@@ -1,16 +1,20 @@
var config = {};
+config.url = {
+ "tor": "https://check.torproject.org/",
+ "ip": "https://webbrowsertools.com/ip-address/",
+ "github": "https://github.com/jeremy-jr-benthum/tor-button/releases",
+};
+
config.welcome = {
- get version () {return app.storage.read("version")},
- set version (val) {app.storage.write("version", val)}
+ set lastupdate (val) {app.storage.write("lastupdate", val)},
+ get lastupdate () {return app.storage.read("lastupdate") !== undefined ? app.storage.read("lastupdate") : 0}
};
config.addon = {
- "check": "https://check.torproject.org/",
set state (val) {app.storage.write("state", val)},
set whitelist (val) {app.storage.write("whitelist", val)},
get whitelist () {return app.storage.read("whitelist") || ''},
- "github": "https://github.com/jeremy-jr-benthum/tor-button/releases",
get state () {return app.storage.read("state") !== undefined ? app.storage.read("state") : "OFF"}
};
@@ -26,20 +30,19 @@ config.request = function (url, callback) {
};
config.notifications = (function () {
- chrome.notifications.onClosed.addListener(function () {config.notifications.id = ''});
- chrome.notifications.onClicked.addListener(function (id) {if (id === config.notifications.id) app.tab.open(app.homepage() + "#faq")});
+ chrome.notifications.onClicked.addListener(function (id) {
+ if (id === config.notifications.id) app.tab.open(app.homepage() + "#faq");
+ });
/* */
return {
- "id": '',
+ "id": "onion-button-notifications-id",
"create": function (message) {
- var iconUrl = /Firefox/.test(navigator.userAgent) ? "data/icons/64.png" : chrome.runtime.getURL("data/icons/64.png");
- var o = {"message": message, "type": "basic", "title": "Onion Browser Button", "iconUrl": iconUrl};
- if (config.notifications.id) {
- if (chrome.notifications.update) {
- return chrome.notifications.update(config.notifications.id, o, function () {});
- }
- }
- return chrome.notifications.create(o, function (id) {config.notifications.id = id});
+ chrome.notifications.create(config.notifications.id, {
+ "type": "basic",
+ "message": message,
+ "title": "Onion Browser Button",
+ "iconUrl": /Firefox/.test(navigator.userAgent) ? "data/icons/64.png" : chrome.runtime.getURL("data/icons/64.png")
+ }, function () {});
}
}
})();
diff --git a/data/extensions/tortm-browser-button@jeremybenthum/manifest.json b/data/extensions/tortm-browser-button@jeremybenthum/manifest.json
index 5ebb3ea..4f33cb9 100644
--- a/data/extensions/tortm-browser-button@jeremybenthum/manifest.json
+++ b/data/extensions/tortm-browser-button@jeremybenthum/manifest.json
@@ -1,11 +1,11 @@
-{
+{
"applications": { "gecko": { "id": "tortm-browser-button@jeremybenthum" } },
- "version": "0.1.7",
+ "version": "0.1.8",
"manifest_version": 2,
"short_name": "onion-button",
"name": "Onion Browser Button",
"background": {"page": "lib/chrome/background.html"},
- "homepage_url": "http://mybrowseraddon.com/tor-button.html",
+ "homepage_url": "https://mybrowseraddon.com/tor-button.html",
"description": "Easily browse the internet using TOR proxy with just one click!",
"permissions": ["proxy", "storage", "notifications", "https://check.torproject.org/*"],
"browser_action": {