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

askOnly once extended

API-types can now be combined in "askOnlyOnce".
Needed new storage version -> added settings migration
This commit is contained in:
kkapsner 2017-11-10 23:45:09 +01:00
parent f75189f374
commit a465303fff
7 changed files with 116 additions and 38 deletions

View file

@ -125,7 +125,7 @@
var askMode = getAskMode(window, type, _);
var askStatus = askMode.askStatus;
var appearance = canvasAppearance(window, canvas);
if (prefs("askOnlyOnce") && askStatus.alreadyAsked[appearance.askCategory]){
if (prefs("askOnlyOnce") !== "no" && askStatus.alreadyAsked[appearance.askCategory]){
// already asked
appearance.reset();
return askStatus.answer[appearance.askCategory];
@ -137,8 +137,19 @@
msg += parseErrorStack(errorStack).toString(_);
}
answer = window.confirm(msg)? "allow": prefs("askDenyMode");
askStatus.alreadyAsked[appearance.text] = true;
askStatus.answer[appearance.text] = answer;
if (prefs("askOnlyOnce") === "combined"){
["context", "readout", "input"].forEach(function(type){
var askMode = getAskMode(window, type, _);
var askStatus = askMode.askStatus;
askStatus.alreadyAsked[appearance.text] = true;
askStatus.answer[appearance.text] = answer;
});
}
else {
askStatus.alreadyAsked[appearance.text] = true;
askStatus.answer[appearance.text] = answer;
}
appearance.reset();
return answer;
}