aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--background_scripts/exclusions.coffee5
-rw-r--r--pages/options.coffee11
2 files changed, 10 insertions, 6 deletions
diff --git a/background_scripts/exclusions.coffee b/background_scripts/exclusions.coffee
index db86e583..a8d65d62 100644
--- a/background_scripts/exclusions.coffee
+++ b/background_scripts/exclusions.coffee
@@ -26,8 +26,11 @@ root.Exclusions = Exclusions =
# Merge the matching rules for URL, or null.
getRule: (url) ->
matching = (rule for rule in @rules when url.match(RegexpCache.get(rule.pattern)))
+ # An absolute exclusion rule (with no passKeys) takes priority.
+ for rule in matching
+ return rule unless rule.passKeys
if matching.length
- pattern: (rule.pattern for rule in matching).join " | " # Not used; for documentation/debugging only.
+ pattern: (rule.pattern for rule in matching).join " | " # Not used; for debugging only.
passKeys: (rule.passKeys for rule in matching).join ""
else
null
diff --git a/pages/options.coffee b/pages/options.coffee
index ad192142..460f2789 100644
--- a/pages/options.coffee
+++ b/pages/options.coffee
@@ -229,7 +229,7 @@ initOptionsPage = ->
searchUrl: NonEmptyTextOption
userDefinedLinkHintCss: TextOption
- # Populate options. The constructor adds each new object to "Option.all".
+ # Populate options. The constructor adds each new object to "Option.all".
for name, type of options
new type(name,enableSaveButton)
@@ -242,7 +242,7 @@ initPopupPage = ->
$("saveOptions").removeAttribute "disabled"
$("saveOptions").innerHTML = "Save Changes"
- $("saveOptions").addEventListener "click", ->
+ saveOptions = ->
Option.saveOptions()
$("helpText").innerHTML = "Rules saved."
$("saveOptions").innerHTML = "No Changes"
@@ -250,13 +250,14 @@ initPopupPage = ->
chrome.tabs.query { windowId: chrome.windows.WINDOW_ID_CURRENT, active: true }, (tabs) ->
chrome.extension.getBackgroundPage().updateActiveState(tabs[0].id)
+ $("saveOptions").addEventListener "click", saveOptions
+
document.addEventListener "keyup", (event) ->
if event.ctrlKey and event.keyCode == 13
- Option.saveOptions()
- chrome.tabs.query { windowId: chrome.windows.WINDOW_ID_CURRENT, active: true }, (tabs) ->
- chrome.extension.getBackgroundPage().updateActiveState(tabs[0].id)
+ saveOptions()
window.close()
+ # Populate options. Just one, here.
new ExclusionRulesOption("exclusionRules", onUpdated, tab.url)
#