summaryrefslogtreecommitdiff
path: root/data/extensions/https-everywhere@eff.org/pages/options
diff options
context:
space:
mode:
authorRuben Rodriguez <ruben@trisquel.info>2022-09-08 20:18:54 -0400
committerRuben Rodriguez <ruben@trisquel.info>2022-09-08 20:18:54 -0400
commit5da28b0f8771834ae208d61431d632875e9f8e7d (patch)
tree688ecaff26197bad8abde617b4947b11d617309e /data/extensions/https-everywhere@eff.org/pages/options
parent4a87716686104266a9cccc2d83cc249e312f3673 (diff)
Updated extensions:
* Upgraded Privacy Redirect to 1.1.49 and configured to use the 10 most reliable invidious instances * Removed ViewTube * Added torproxy@icecat.gnu based on 'Proxy toggle' extension * Added jShelter 0.11.1 * Upgraded LibreJS to 7.21.0 * Upgraded HTTPS Everywhere to 2021.7.13 * Upgraded SubmitMe to 1.9
Diffstat (limited to 'data/extensions/https-everywhere@eff.org/pages/options')
-rw-r--r--data/extensions/https-everywhere@eff.org/pages/options/index.html18
-rw-r--r--data/extensions/https-everywhere@eff.org/pages/options/style.css113
-rw-r--r--data/extensions/https-everywhere@eff.org/pages/options/ux.js119
3 files changed, 155 insertions, 95 deletions
diff --git a/data/extensions/https-everywhere@eff.org/pages/options/index.html b/data/extensions/https-everywhere@eff.org/pages/options/index.html
index 6d82a18..b6bdc33 100644
--- a/data/extensions/https-everywhere@eff.org/pages/options/index.html
+++ b/data/extensions/https-everywhere@eff.org/pages/options/index.html
@@ -2,15 +2,16 @@
<html>
<head>
<meta charset="utf-8">
- <meta name="viewport" content="width=device-width, initial-scale=.8">
+ <meta name="viewport" content="width=device-width, initial-scale=1">
<title></title>
<link href="style.css" rel="stylesheet">
</head>
- <body>
- <span class="section-header-span active" data-show="general-settings-wrapper" data-i18n="options_generalSettings"></span>
- <span class="section-header-span inactive" data-show="advanced-settings-wrapper" data-i18n="options_advancedSettings"></span>
- <span class="section-header-span inactive" data-show="update-channels-wrapper" data-i18n="options_updateChannels"></span>
-
+ <body class="font">
+ <section class="header-wrapper">
+ <span class="button section-header-span active" data-show="general-settings-wrapper" data-i18n="options_generalSettings"></span>
+ <span class="button section-header-span inactive" data-show="advanced-settings-wrapper" data-i18n="options_advancedSettings"></span>
+ <span class="button section-header-span inactive" data-show="update-channels-wrapper" data-i18n="options_updateChannels"></span>
+ </section>
<div class="section-wrapper" id="general-settings-wrapper">
<div id="update-wrapper" class="settings-wrapper">
<input type="checkbox" id="autoUpdateRulesets">
@@ -22,9 +23,10 @@
<div id="disabled-rules-wrapper">
<p class="disabled-rules-wrapper-header" data-i18n="options_disabledUrlsListed"></p>
<div id="add-disabled-site-wrapper">
- <button id="add-disabled-site" data-i18n="options_addDisabledSite"></button>
+ <button class="button" id="add-disabled-site" data-i18n="options_addDisabledSite"></button>
<input type="text" id="disabled-site" />
</div>
+ <div id="add-disabled-site-invalid-host" data-i18n="options_hostNotFormattedCorrectly"></div>
</div>
</div>
@@ -49,7 +51,7 @@
<div class="clearer"></div>
<div id="update-channels-list"></div>
<div id="add-update-channel-wrapper">
- <button id="add-update-channel" data-i18n="options_addUpdateChannel"></button>
+ <button class="button" id="add-update-channel" data-i18n="options_addUpdateChannel"></button>
<input type="text" id="update-channel-name" />
</div>
</div>
diff --git a/data/extensions/https-everywhere@eff.org/pages/options/style.css b/data/extensions/https-everywhere@eff.org/pages/options/style.css
index d0f4324..032a7ba 100644
--- a/data/extensions/https-everywhere@eff.org/pages/options/style.css
+++ b/data/extensions/https-everywhere@eff.org/pages/options/style.css
@@ -1,35 +1,30 @@
+@import "../main.css";
+
body{
- min-width: 500px;
- min-height: 250px;
- display: block;
+ display: grid;
+ grid-template-columns: 1fr 1fr 1fr;
}
-@media (prefers-color-scheme: dark) {
- body {
- background-color: #202023;
- color: #f9f9fa;
- }
-
- .section-header-span, div#update-channels-warning {
- color: #000;
- }
-
- textarea, input[type=text] {
- background-color: #202023;
- color: #f9f9fa;
- }
+/*---------
+# GRID LAYOUT
+---------*/
+.header-wrapper, .section-wrapper {
+ margin: auto;
}
-
-a.settings{
- background-color: #1c87c9;
- border: none;
- color: white;
- padding: 20px 34px;
- text-align: center;
- text-decoration: none;
- display: inline-block;
- font-size: 20px;
- margin: 4px 2px;
+.header-wrapper {
+ display: inline-flex;
+ grid-column: 2;
+ grid-row: 1;
+}
+.section-wrapper {
+ grid-column: 2;
+ grid-row: 2;
+}
+#add-disabled-site-wrapper {
+ float: left;
+}
+#add-update-channel-wrapper {
+ display: inline-block;
}
.settings-wrapper{
@@ -63,6 +58,11 @@ a.settings{
}
/** Disabled Sites Option**/
+#add-disabled-site-invalid-host {
+ font-weight: bold;
+ color: red;
+ display: none;
+}
.disabled-rules-wrapper-header {
font-weight: bold;
padding-left: 5px;
@@ -71,7 +71,7 @@ img.remove{
cursor: pointer;
float: right;
height: 15px;
- margin: 10px 0 0 8%;
+ margin-top: -34px;
width: 15px;
}
.disabled-rule-list-item:last-of-type {
@@ -79,12 +79,11 @@ img.remove{
}
.disabled-rule-list-item {
border-bottom: 1px solid #ccc;
- display: inline-flex;
- margin-left: 5%;
- width: 80%;
+ clear: both;
}
.disabled-rule-list-item p {
- width: 100%;
+ width: 80%;
+ word-wrap: anywhere;
}
.section-header{
@@ -101,28 +100,30 @@ img.remove{
}
.section-header-span{
- font-size: 15px;
- border: 0px;
- border-radius: 13px;
+ cursor: pointer;
padding: 8px;
- margin-right: 10px;
+ margin-left: 0 !important;
+ margin-right: var(--space) !important;
display: inline-block;
}
.section-header-span.active{
- background-color: #66ccff;
+ background-color: var(--darker-blue);
+ color: #FFF;
}
-
.section-header-span.inactive{
- background-color: #ddd;
+ background-color: var(--light-grey);
+}
+.section-header-span.inactive:hover {
+ background-color: var(--darker-blue);
}
.update-channel{
- margin-top: 30px;
- margin-bottom: 30px;
border: 1px solid grey;
border-radius: 20px;
- width: 498px;
+ margin-top: 30px;
+ margin-bottom: 30px;
+ padding: 6px;
}
.update-channel-name{
@@ -146,8 +147,9 @@ img.remove{
}
textarea.update-channel-jwk {
- width: 380px;
+ width: 367px;
height: 250px;
+ resize: vertical;
}
input.update-channel-path-prefix, input.update-channel-scope {
@@ -166,8 +168,9 @@ div.update-channel-row-scope {
button#add-update-channel, button#add-disabled-site {
float: right;
+ height: 30px;
margin: 0px 10px 10px 10px;
- border-radius: 7px;
+ padding: 6px;
}
input#update-channel-name, input#disabled-site {
@@ -218,8 +221,8 @@ div#update-channels-last-checked {
font-size: 10px;
}
-#update-channels-wrapper{
- width: 500px;
+#update-channels-list {
+ display: inline-block;
}
@keyframes flash {
@@ -243,3 +246,19 @@ div#update-channels-last-checked {
.flash {
animation: flash 1s ease-out;
}
+
+@media (prefers-color-scheme: dark) {
+ body {
+ background-color: #202023;
+ color: #f9f9fa;
+ }
+
+ .section-header-span, div#update-channels-warning {
+ color: #000;
+ }
+
+ textarea, input[type=text] {
+ background-color: #202023;
+ color: #f9f9fa;
+ }
+}
diff --git a/data/extensions/https-everywhere@eff.org/pages/options/ux.js b/data/extensions/https-everywhere@eff.org/pages/options/ux.js
index fbfc113..02ad39d 100644
--- a/data/extensions/https-everywhere@eff.org/pages/options/ux.js
+++ b/data/extensions/https-everywhere@eff.org/pages/options/ux.js
@@ -1,47 +1,33 @@
/* global sendMessage */
/* global getOption_ */
/* global e */
-/* global hide */
+/* global show, hide */
"use strict";
-if (navigator.userAgent.includes("Android")) {
- const url = new URL(window.location.href);
- if (!url.searchParams.get('redirected')) {
- url.searchParams.set('redirected', true);
- document.body.innerText = "";
- let link = document.createElement("a");
- link.href = url.href;
- link.target = "_blank";
- link.className = "settings";
- link.innerText = chrome.i18n.getMessage("options_settings");
- document.body.appendChild(link);
- }
-}
-
document.addEventListener("DOMContentLoaded", () => {
- const secretArea = document.getElementById('secretArea')
+ const secretArea = document.getElementById('secretArea');
const onKeyDownHandler = evt => {
if (evt.ctrlKey && evt.key === 'z') {
- secretArea.classList.remove('hidden')
- secretArea.classList.add('flash')
+ secretArea.classList.remove('hidden');
+ secretArea.classList.add('flash');
- sendMessage('set_option', { developerMode: true })
+ sendMessage('set_option', { developerMode: true });
- document.removeEventListener('keydown', onKeyDownHandler)
+ document.removeEventListener('keydown', onKeyDownHandler);
- evt.preventDefault()
+ evt.preventDefault();
}
- }
+ };
sendMessage('get_option', { developerMode: false }, item => {
if (item.developerMode) {
- secretArea.classList.remove('hidden')
+ secretArea.classList.remove('hidden');
} else {
- document.addEventListener('keydown', onKeyDownHandler)
+ document.addEventListener('keydown', onKeyDownHandler);
}
- })
+ });
const autoUpdateRulesets = document.getElementById("autoUpdateRulesets");
const enableMixedRulesets = document.getElementById("enableMixedRulesets");
@@ -91,7 +77,7 @@ document.addEventListener("DOMContentLoaded", () => {
});
});
- function create_update_channel_element(update_channel, last_updated, pinned) {
+ function create_update_channel_element(update_channel, last_updated, locked) {
let ruleset_version_string;
if(last_updated) {
@@ -113,6 +99,33 @@ document.addEventListener("DOMContentLoaded", () => {
update_channel_last_updated.innerText = chrome.i18n.getMessage("options_storedRulesetsVersion") + ruleset_version_string;
update_channel_name.appendChild(update_channel_last_updated);
+ const update_channel_row_format = document.createElement('div');
+ update_channel_row_format.className = "update-channel-row-format";
+ update_channel_div.appendChild(update_channel_row_format);
+ const update_channel_format_column_left = document.createElement('div');
+ update_channel_format_column_left.className = "update-channel-column-left";
+ update_channel_format_column_left.innerText = "Format:";
+ update_channel_row_format.appendChild(update_channel_format_column_left);
+ const update_channel_format_column_right = document.createElement('div');
+ update_channel_format_column_right.className = "update-channel-column-right";
+ update_channel_row_format.appendChild(update_channel_format_column_right);
+ const update_channel_format = document.createElement('select');
+ update_channel_format.className = "update-channel-format";
+ update_channel_format.setAttribute("data-name", update_channel.name);
+ update_channel_format.disabled = locked;
+ update_channel_format_column_right.appendChild(update_channel_format);
+ const update_channel_format_option_ruleset = document.createElement('option');
+ update_channel_format_option_ruleset.value = "ruleset";
+ update_channel_format_option_ruleset.innerText = "ruleset";
+ update_channel_format_option_ruleset.defaultSelected = true;
+ update_channel_format_option_ruleset.selected = (update_channel.format == "ruleset");
+ update_channel_format.appendChild(update_channel_format_option_ruleset);
+ const update_channel_format_option_bloom = document.createElement('option');
+ update_channel_format_option_bloom.value = "bloom";
+ update_channel_format_option_bloom.innerText = "bloom";
+ update_channel_format_option_bloom.selected = (update_channel.format == "bloom");
+ update_channel_format.appendChild(update_channel_format_option_bloom);
+
const update_channel_row_jwk = document.createElement('div');
update_channel_row_jwk.className = "update-channel-row-jwk";
update_channel_div.appendChild(update_channel_row_jwk);
@@ -126,7 +139,7 @@ document.addEventListener("DOMContentLoaded", () => {
const update_channel_jwk = document.createElement('textarea');
update_channel_jwk.className = "update-channel-jwk";
update_channel_jwk.setAttribute("data-name", update_channel.name);
- update_channel_jwk.disabled = pinned;
+ update_channel_jwk.disabled = locked;
update_channel_jwk.innerText = JSON.stringify(update_channel.jwk);
update_channel_jwk_column_right.appendChild(update_channel_jwk);
@@ -144,7 +157,7 @@ document.addEventListener("DOMContentLoaded", () => {
update_channel_path_prefix.setAttribute("type", "text");
update_channel_path_prefix.className = "update-channel-path-prefix";
update_channel_path_prefix.setAttribute("data-name", update_channel.name);
- update_channel_path_prefix.disabled = pinned;
+ update_channel_path_prefix.disabled = locked;
update_channel_path_prefix.value = update_channel.update_path_prefix;
update_channel_path_prefix_column_right.appendChild(update_channel_path_prefix);
@@ -153,6 +166,9 @@ document.addEventListener("DOMContentLoaded", () => {
update_channel_div.appendChild(clearer);
const update_channel_row_scope = document.createElement('div');
+ if(update_channel.format == "bloom") {
+ update_channel_row_scope.style.display = "none";
+ }
update_channel_row_scope.className = "update-channel-row-scope";
update_channel_div.appendChild(update_channel_row_scope);
const update_channel_scope_column_left = document.createElement('div');
@@ -166,7 +182,7 @@ document.addEventListener("DOMContentLoaded", () => {
update_channel_scope.setAttribute("type", "text");
update_channel_scope.className = "update-channel-scope";
update_channel_scope.setAttribute("data-name", update_channel.name);
- update_channel_scope.disabled = pinned;
+ update_channel_scope.disabled = locked;
update_channel_scope.value = update_channel.scope;
update_channel_scope_column_right.appendChild(update_channel_scope);
@@ -183,13 +199,13 @@ document.addEventListener("DOMContentLoaded", () => {
const update_channel_update = document.createElement('button');
update_channel_update.className = "update-channel-update";
update_channel_update.setAttribute("data-name", update_channel.name);
- update_channel_update.disabled = pinned;
+ update_channel_update.disabled = locked;
update_channel_update.innerText = chrome.i18n.getMessage("options_update");
update_channel_controls_column_right.appendChild(update_channel_update);
const update_channel_delete = document.createElement('button');
update_channel_delete.className = "update-channel-update";
update_channel_delete.setAttribute("data-name", update_channel.name);
- update_channel_delete.disabled = pinned;
+ update_channel_delete.disabled = locked;
update_channel_delete.innerText = chrome.i18n.getMessage("options_delete");
update_channel_controls_column_right.appendChild(update_channel_delete);
@@ -197,6 +213,13 @@ document.addEventListener("DOMContentLoaded", () => {
clearer.className = "clearer";
update_channel_div.appendChild(clearer);
+ update_channel_format.addEventListener("change", () => {
+ if(update_channel_format.value == "bloom") {
+ update_channel_row_scope.style.display = "none";
+ } else {
+ update_channel_row_scope.style.display = "block";
+ }
+ });
update_channel_delete.addEventListener("click", () => {
sendMessage("delete_update_channel", update_channel.name, () => {
render_update_channels();
@@ -206,6 +229,7 @@ document.addEventListener("DOMContentLoaded", () => {
update_channel_update.addEventListener("click", () => {
sendMessage("update_update_channel", {
name: update_channel.name,
+ format: update_channel_format.value,
jwk: JSON.parse(update_channel_jwk.value),
update_path_prefix: update_channel_path_prefix.value,
scope: update_channel_scope.value
@@ -229,7 +253,7 @@ document.addEventListener("DOMContentLoaded", () => {
create_update_channel_element(
update_channel,
item.last_updated[update_channel.name],
- true
+ true,
)
);
@@ -242,7 +266,7 @@ document.addEventListener("DOMContentLoaded", () => {
create_update_channel_element(
update_channel,
item.last_updated[update_channel.name],
- false
+ update_channel.locked === true,
)
);
}
@@ -295,7 +319,7 @@ document.addEventListener("DOMContentLoaded", () => {
sendMessage("remove_rule", { ruleset: userRule, src: 'options' });
});
}
- })
+ });
// HTTPS Everywhere Sites Disabled section in General Settings module
getOption_("disabledList", [], function(item) {
@@ -329,14 +353,29 @@ document.addEventListener("DOMContentLoaded", () => {
const add_disabled_site = document.getElementById("add-disabled-site");
const disabled_site_input = document.getElementById("disabled-site");
+ const add_disabled_site_invalid_host = document.getElementById('add-disabled-site-invalid-host');
disabled_site_input.setAttribute("placeholder", chrome.i18n.getMessage("options_enterDisabledSite"));
-
+ function isValidHost(host) {
+ try {
+ new URL(`http://${host}/`);
+ return true;
+ } catch {
+ return false;
+ }
+ }
add_disabled_site.addEventListener("click", function() {
- sendMessage("disable_on_site", disabled_site_input.value, okay => {
- if (okay) {
- chrome.tabs.reload();
- }
- });
+ const host = disabled_site_input.value;
+
+ if (isValidHost(host)) {
+ hide(add_disabled_site_invalid_host);
+ sendMessage("disable_on_site", disabled_site_input.value, okay => {
+ if (okay) {
+ chrome.tabs.reload();
+ }
+ });
+ } else {
+ show(add_disabled_site_invalid_host);
+ }
});
add_update_channel.addEventListener("click", () => {