Browse Source

Many bug fixes

master
Said Achmiz 6 years ago
parent
commit
e82376a7ef
2 changed files with 24 additions and 25 deletions
  1. 6
    5
      contentScript.js
  2. 18
    20
      popup.js

+ 6
- 5
contentScript.js View File

var shouldKillSticky = false; var shouldKillSticky = false;
let matchingPatterns = result.mode == "whitelist" ? let matchingPatterns = result.mode == "whitelist" ?
[ ".*" ] : [ ".*" ] :
result.matchingPatterns.split("\n");
(typeof result.matchingPatterns != "undefined" ?
result.matchingPatterns.split("\n") :
[ ]);
for (let pattern of matchingPatterns) { for (let pattern of matchingPatterns) {
if (location.href.match(new RegExp(pattern))) {
if (pattern && location.href.match(new RegExp(pattern))) {
shouldKillSticky = true; shouldKillSticky = true;
break; break;
} }
} }
let exclusionPatterns = (typeof result.exclusionPatterns != "undefined" &&
result.exclusionPatterns != "") ?
let exclusionPatterns = typeof result.exclusionPatterns != "undefined" ?
result.exclusionPatterns.split("\n") : result.exclusionPatterns.split("\n") :
[ ]; [ ];
for (let pattern of exclusionPatterns) { for (let pattern of exclusionPatterns) {
if (location.href.match(new RegExp(pattern))) {
if (pattern && location.href.match(new RegExp(pattern))) {
shouldKillSticky = false; shouldKillSticky = false;
break; break;
} }

+ 18
- 20
popup.js View File

/*******************/
/* EVENT LISTENERS */
/*******************/


/***********/ /***********/
/* HELPERS */ /* HELPERS */
/***********/ /***********/
ASK.pageMatched = false; ASK.pageMatched = false;
ASK.pageExcluded = false; ASK.pageExcluded = false;
for (let pattern of ASK.matchingPatterns) { for (let pattern of ASK.matchingPatterns) {
if (ASK.activeTabLocation.match(new RegExp(pattern))) {
if (pattern && ASK.activeTabLocation.match(new RegExp(pattern))) {
ASK.pageMatched = true; ASK.pageMatched = true;
break; break;
} }
} }
for (let pattern of ASK.exclusionPatterns) { for (let pattern of ASK.exclusionPatterns) {
if (ASK.activeTabLocation.match(new RegExp(pattern))) {
if (pattern && ASK.activeTabLocation.match(new RegExp(pattern))) {
ASK.pageExcluded = true; ASK.pageExcluded = true;
break; break;
} }
ASK.mode = result.mode || "blacklist"; ASK.mode = result.mode || "blacklist";
ASK.matchingPatterns = (ASK.mode == "whitelist") ? ASK.matchingPatterns = (ASK.mode == "whitelist") ?
[ ".*" ] : [ ".*" ] :
result.matchingPatterns.split("\n");
ASK.exclusionPatterns = (typeof result.exclusionPatterns != "undefined" &&
result.exclusionPatterns != "") ?
(typeof result.matchingPatterns != "undefined" ?
result.matchingPatterns.split("\n") :
[ ]);
ASK.exclusionPatterns = typeof result.exclusionPatterns != "undefined" ?
result.exclusionPatterns.split("\n") : result.exclusionPatterns.split("\n") :
[ ]; [ ];
recalculatePatternEffects(); recalculatePatternEffects();
function initialize() { function initialize() {
window.ASK = { }; window.ASK = { };


// Retrieve saved settings.
chrome.tabs.query({currentWindow: true, active: true}, (tabs) => { chrome.tabs.query({currentWindow: true, active: true}, (tabs) => {
ASK.activeTabLocation = tabs[0].url; ASK.activeTabLocation = tabs[0].url;
chrome.storage.sync.get([ "matchingPatterns", "exclusionPatterns", "mode" ], (result) => { chrome.storage.sync.get([ "matchingPatterns", "exclusionPatterns", "mode" ], (result) => {
}); });
}); });


// Listener for main button.
document.querySelector("button.main-button").addActivateEvent((event) => { document.querySelector("button.main-button").addActivateEvent((event) => {
toggleState(); toggleState();


let matchingPatterns = ASK.matchingPatterns.join("\n");
let exclusionPatterns = ASK.exclusionPatterns.join("\n");
let mode = ASK.mode;
chrome.storage.sync.set({
"matchingPatterns": matchingPatterns,
"exclusionPatterns": exclusionPatterns,
"mode": mode
}, () => {
var changes = {
"exclusionPatterns": ASK.exclusionPatterns.join("\n"),
"mode": ASK.mode
};
if (ASK.mode == "blacklist")
changes.matchingPatterns = ASK.matchingPatterns.join("\n");
chrome.storage.sync.set(changes, () => {
updateUIState(); updateUIState();
let reloadButton = document.querySelector("button.reload-button"); let reloadButton = document.querySelector("button.reload-button");
if (ASK.pageMatched && !ASK.pageExcluded) { if (ASK.pageMatched && !ASK.pageExcluded) {
}); });
}); });


// Listener for Options button.
document.querySelector("button.options-button").addActivateEvent(() => { document.querySelector("button.options-button").addActivateEvent(() => {
chrome.runtime.openOptionsPage(null); chrome.runtime.openOptionsPage(null);
}); });

// Listener for reload button (appears when sticky-killing is toggled OFF).
document.querySelector("button.reload-button").addActivateEvent(() => { document.querySelector("button.reload-button").addActivateEvent(() => {
chrome.tabs.update(null, { url: ASK.activeTabLocation }); chrome.tabs.update(null, { url: ASK.activeTabLocation });
window.close(); window.close();

Loading…
Cancel
Save