diff --git a/README.md b/README.md
index 5897f48..83df6a3 100644
--- a/README.md
+++ b/README.md
@@ -24,6 +24,14 @@ The easiest is to simply type on a page as normal. This method breaks the least
You can whitelist sites by using the button in the addon's popup or by manually adding them on the addon settings page.
+## Unicode Conversion
+
+There is a default disabled setting to convert ascii to look-alike unicode characters.
+
+This doesn't do a lot, but it makes it a bit harder to do 'sentiment-analysis' and breaks typical text search.
+
+This can also circumvent naive profanity filters.
+
## Toolbar input
You can also enter text into the textarea in the toolbar button which will be instantly transfered to the page. This method allows you to type without lag, but it breaks on many websites and can still be tracked if a website is checking input changes as opposed to key events.
diff --git a/manifest.json b/manifest.json
index f2e61ee..51a6d09 100644
--- a/manifest.json
+++ b/manifest.json
@@ -2,7 +2,7 @@
"manifest_version": 2,
"name": "Private Keyboard",
- "version": "2.0",
+ "version": "2.1",
"description": "Protect against keyboard biometrics",
diff --git a/settings/button.html b/settings/button.html
index 9edbce6..e22a9d2 100644
--- a/settings/button.html
+++ b/settings/button.html
@@ -4,6 +4,7 @@
Private Keyboard
+
diff --git a/settings/keybuffer2.js b/settings/keybuffer2.js
index 78e0abd..a9a9fe7 100644
--- a/settings/keybuffer2.js
+++ b/settings/keybuffer2.js
@@ -1,5 +1,17 @@
let started = false
+useUnicode = false
+
+let usingUnicode = function(result){
+ console.debug(result)
+ if (result['keyboardprivacyunicode']){
+ useUnicode = true
+ }
+}
+
+let doUnicode = browser.storage.sync.get("keyboardprivacyunicode");
+doUnicode.then(usingUnicode, onError);
+
function onError(error) {
console.error(`Error: ${error}`);
}
@@ -35,7 +47,12 @@ let sender = async function(e){
}
let sendMessageToTabs = function(tabs){
- doSendMsg(document.getElementById('keyBuffer').value, tabs)
+ let val = document.getElementById('keyBuffer').value
+ if (useUnicode){
+ val = getUnicode(val)
+ }
+
+ doSendMsg(val, tabs)
}
browser.tabs.query({
@@ -73,4 +90,4 @@ getCurrent()
document.getElementById("keyBuffer").focus()
document.getElementById('keyBuffer').onkeydown = sender
-document.getElementById('keyBuffer').onpaste = sender
\ No newline at end of file
+document.getElementById('keyBuffer').onpaste = sender
diff --git a/settings/options.html b/settings/options.html
index e4b6e4e..acc40bd 100644
--- a/settings/options.html
+++ b/settings/options.html
@@ -12,6 +12,9 @@
+
+
+