1
0
Fork 0
mirror of https://github.com/kkapsner/CanvasBlocker synced 2025-07-04 20:46:39 +02:00

Added setting to whitelist parts of the canvas API

This commit is contained in:
kkapsner 2018-05-26 15:33:39 +02:00
parent 9d0cd04fc3
commit f02246128e
7 changed files with 87 additions and 2 deletions

View file

@ -127,6 +127,47 @@
});
}
else if (setting.keys){
input = document.createElement("table");
setting.keys.forEach(function(key){
let row = document.createElement("tr");
let nameCell = document.createElement("td");
nameCell.textContent = key;
row.appendChild(nameCell);
let keyType = inputTypes[typeof setting.defaultKeyValue];
let keyInput = document.createElement("input");
keyType.input(keyInput, setting.defaultKeyValue);
let inputCell = document.createElement("td");
inputCell.appendChild(keyInput);
row.appendChild(inputCell);
setting.on(function(){
var container = setting.get(url);
keyType.updateCallback(
keyInput,
container && container.hasOwnProperty(key)?
container[key]:
setting.defaultKeyValue,
url
);
});
keyInput.addEventListener("change", function(){
var value = keyType.getValue(keyInput);
var container = setting.get(url);
if (!container){
container = setting.defaultValue;
}
container[key] = value;
setting.set(container, url);
logging.message("changed setting", setting.name, "(", key, "):", value);
});
input.appendChild(row);
});
}
if (setting.urlSpecific && url === ""){
let container = document.createElement("div");
container.className = "urlValues collapsed";