diff --git a/.vscode/settings.json b/.vscode/settings.json index 0d9631b..cb30569 100644 --- a/.vscode/settings.json +++ b/.vscode/settings.json @@ -33,6 +33,7 @@ "ignorelist", "micrococo", "monero", + "onedrive", "onloaded", "oscpu", "prefs", diff --git a/_locales/de/messages.json b/_locales/de/messages.json index 1bcef65..4edeccb 100644 --- a/_locales/de/messages.json +++ b/_locales/de/messages.json @@ -43,6 +43,10 @@ "message": "OK", "description": "" }, + "apply": { + "message": "Anwenden", + "description": "" + }, "cancel": { "message": "Abbrechen", "description": "" @@ -1195,6 +1199,10 @@ "message": "Öffnen", "description": "" }, + "openSettingPresets_label": { + "message": "Voreinstellungen", + "description": "" + }, "inspectSettings_label": { "message": "Anzeigen", "description": "" @@ -1366,5 +1374,53 @@ "whitelist_all_apis": { "message": "Alle APIs", "description": "" + }, + "presets": { + "message": "Voreinstellungen", + "description": "" + }, + "presets_title": { + "message": "CanvasBlocker Voreinstellungen", + "description": "" + }, + "presets_installNotice": { + "message": "{image:../icons/icon.svg}Danke, dass Sie CanvasBlocker installiert haben. Um ihn an Ihre Bedürfnisse anzupassen können Sie ein paar Voreinstellungen anwenden. In den {link:Optionen:options.html} können Sie CanvasBlocker noch weiter anpassen. Dort können Sie auch diese Voreinstellungsseite später wieder öffnen.", + "description": "" + }, + "presets_introduction": { + "message": "Dies sind ein paar Voreinstellungen für verschiedene Bedürfnisse. Die Werte in Klammern sind die aktuellen Einstellungen. Sie können mehrere Voreinstellungen hintereinander anwenden, aber ein paar Einstellungen können dabei von der später angewandten Voreinstellung überschrieben werden.", + "description": "" + }, + "preset_default_title": { + "message": "Standard Einstellungen", + "description": "" + }, + "preset_default_description": { + "message": "Keine speziellen Einstellungen werden gesetzt.", + "description": "" + }, + "preset_convenience_title": { + "message": "Praktische Einstellungen", + "description": "" + }, + "preset_convenience_description": { + "message": "Setzt einige Einstellungen so, dass CanvasBlocker die Browsererfahrung so wenig wie möglichst beeinträchtigt. Dies beinhaltet, dass die Benutzung mancher APIs für ein paar Seiten erlaubt wird.", + "description": "" + }, + "preset_stealth_title": { + "message": "Schwer zu detektieren", + "description": "" + }, + "preset_stealth_description": { + "message": "Stellt CanvasBlocker so ein, dass er schwer zu detektieren ist. Dies kann zu hoher CPU Auslastung führen und kann den Browser verlangsamen.", + "description": "" + }, + "preset_max_protection_title": { + "message": "Maximaler Schutz", + "description": "" + }, + "preset_max_protection_description": { + "message": "Maximiert den Schutz gegen die Fingerprint-Extraktion. Diese Einstellungen werden einige Seiten unbenutzbar machen, können den Browser etwas verlangsamen und können es Seiten ermöglichen die Verwendung von CanvasBlocker zu detektieren.", + "description": "" } } \ No newline at end of file diff --git a/_locales/en/messages.json b/_locales/en/messages.json index 5432af3..efdfc02 100644 --- a/_locales/en/messages.json +++ b/_locales/en/messages.json @@ -45,6 +45,10 @@ "message": "OK", "description": "" }, + "apply": { + "message": "Apply", + "description": "" + }, "cancel": { "message": "Cancel", "description": "" @@ -1249,6 +1253,10 @@ "description": "" }, + "openSettingPresets_label": { + "message": "Presets", + "description": "" + }, "inspectSettings_label": { "message": "Inspect", "description": "" @@ -1424,5 +1432,55 @@ "whitelist_all_apis": { "message": "All APIs", "description": "" + }, + + "presets": { + "message": "Presets", + "description": "" + }, + "presets_title": { + "message": "CanvasBlocker presets", + "description": "" + }, + "presets_installNotice": { + "message": "{image:../icons/icon.svg}Thanks for installing CanvasBlocker. To adjust it to your needs you can apply some presets. For further customization you can open the {link:options:options.html} page. There you can also open this preset page later.", + "description": "" + }, + "presets_introduction": { + "message": "These are some setting presets to fit different people's needs. The values in brackets are the current state of the setting. You can apply multiple presets after each other but some settings might be overwritten by the later applied one.", + "description": "" + }, + + "preset_default_title": { + "message": "Default settings", + "description": "" + }, + "preset_default_description": { + "message": "No special settings are applied.", + "description": "" + }, + "preset_convenience_title": { + "message": "Convenient settings", + "description": "" + }, + "preset_convenience_description": { + "message": "Apply some settings to make the browsing experience as convenient as possible. This includes whitelisting some sites.", + "description": "" + }, + "preset_stealth_title": { + "message": "Stealth settings", + "description": "" + }, + "preset_stealth_description": { + "message": "Configures CanvasBlocker to be hard to detect. This might lead to high CPU usage and might slow down the browser.", + "description": "" + }, + "preset_max_protection_title": { + "message": "Maximum protection", + "description": "" + }, + "preset_max_protection_description": { + "message": "Maximizes the protection against fingerprint extraction. This settings will break some pages, might slow down the browser a little bit and might enable sites to detect that CanvasBlocker is used.", + "description": "" } } diff --git a/lib/main.js b/lib/main.js index 4ed055c..3c39f5c 100644 --- a/lib/main.js +++ b/lib/main.js @@ -167,6 +167,9 @@ case "install": message("CanvasBlocker installed"); openOptions(details.reason); + browser.tabs.create({ + url: browser.extension.getURL("options/presets.html?notice=" + details.reason) + }); break; case "update": settings.onloaded(function(){ diff --git a/options/options.js b/options/options.js index 5d74843..75c3382 100644 --- a/options/options.js +++ b/options/options.js @@ -57,6 +57,10 @@ logging.verbose("open settings sanitation"); window.open("sanitize.html", "_blank"); }, + openSettingPresets: function(){ + logging.verbose("open setting presets"); + window.open("presets.html", "_blank"); + }, saveSettings: function(){ logging.verbose("save settings"); const data = {}; diff --git a/options/presets.css b/options/presets.css new file mode 100644 index 0000000..49e20ad --- /dev/null +++ b/options/presets.css @@ -0,0 +1,11 @@ +.notice { + font-size: 125%; + font-weight: 125%; + margin: 0.5em; + padding: 0.5em; +} + +.notice .noticeImage { + float: left; + margin: 0 0.5em 0.5em 0; +} \ No newline at end of file diff --git a/options/presets.html b/options/presets.html new file mode 100644 index 0000000..142dd2a --- /dev/null +++ b/options/presets.html @@ -0,0 +1,20 @@ + + +
+