aboutsummaryrefslogtreecommitdiffstats
path: root/pages/options.coffee
diff options
context:
space:
mode:
authorStephen Blott2014-12-21 12:47:47 +0000
committerStephen Blott2014-12-21 12:47:47 +0000
commita10945c770dc6c587f6130d45de29e2c98667b8f (patch)
treefe56b37b32ad9e9f7a404ebdadc879e90a33aaa8 /pages/options.coffee
parent020f587a9bece9453833eaa2f742e4123490d600 (diff)
downloadvimium-a10945c770dc6c587f6130d45de29e2c98667b8f.tar.bz2
Exclusion; unique keys; update state on add/remove rule.
Diffstat (limited to 'pages/options.coffee')
-rw-r--r--pages/options.coffee29
1 files changed, 15 insertions, 14 deletions
diff --git a/pages/options.coffee b/pages/options.coffee
index bad4732b..13d51f72 100644
--- a/pages/options.coffee
+++ b/pages/options.coffee
@@ -251,13 +251,27 @@ initOptionsPage = ->
new type(name,enableSaveButton)
initPopupPage = ->
+ exclusions = null
chrome.tabs.getSelected null, (tab) ->
document.getElementById("optionsLink").setAttribute "href", chrome.runtime.getURL("pages/options.html")
+ updateState = ->
+ rules = exclusions.readValueFromElement()
+ isEnabled = bgExclusions.getRule tab.url, rules
+ console.log isEnabled
+ $("state").innerHTML =
+ if isEnabled and isEnabled.passKeys
+ "Excluded: #{isEnabled.passKeys}"
+ else if isEnabled
+ "Disabled"
+ else
+ "Enabled"
+
onUpdated = ->
$("helpText").innerHTML = "Type <strong>Ctrl-Enter</strong> to save and close."
$("saveOptions").removeAttribute "disabled"
$("saveOptions").innerHTML = "Save Changes"
+ updateState() if exclusions
saveOptions = ->
Option.saveOptions()
@@ -277,21 +291,8 @@ initPopupPage = ->
# Populate options. Just one, here.
exclusions = new ExclusionRulesOption("exclusionRules", onUpdated, tab.url)
- updateState = ->
- rules = exclusions.readValueFromElement()
- isEnabled = bgExclusions.getRule tab.url, rules
- console.log isEnabled
- $("state").innerHTML =
- if isEnabled and isEnabled.passKeys
- "Excluded: #{isEnabled.passKeys}"
- else if isEnabled
- "Disabled"
- else
- "Enabled"
-
updateState()
- for event in ["keyup", "DOMNodeInserted", "DOMNodeRemoved"]
- document.addEventListener event, updateState
+ document.addEventListener "keyup", updateState
#
# Initialization.