diff options
| author | Stephen Blott | 2015-03-15 12:32:42 +0000 | 
|---|---|---|
| committer | Stephen Blott | 2015-03-15 12:32:42 +0000 | 
| commit | 3876a4f06de77d190fdaecc6cf99eb57134d0372 (patch) | |
| tree | bdee3ecbb4577e7e155b8488232596035d634d34 /pages/options.coffee | |
| parent | 94a32b9ddcec58439a05179d9b6aeec135b46fb2 (diff) | |
| download | vimium-3876a4f06de77d190fdaecc6cf99eb57134d0372.tar.bz2 | |
Populate popup with frame's URL.
Previously, we have been populating the suggested exclusion URL in the
page popup with the tab's URL.  This uses the active frame's URL
instead:
- because this is the URL which will affect the current frame (without
  this, a user can naively add an exclusion rule and it has no effect),
  and
- because, without this, the user has no reasonable way to add exclusion
  rules for frames such as the hangouts frame on gmail (for which, the
  URL is not displayed in the address bar).
Diffstat (limited to 'pages/options.coffee')
| -rw-r--r-- | pages/options.coffee | 8 | 
1 files changed, 6 insertions, 2 deletions
diff --git a/pages/options.coffee b/pages/options.coffee index d2950348..61b055c2 100644 --- a/pages/options.coffee +++ b/pages/options.coffee @@ -271,8 +271,12 @@ initPopupPage = ->      exclusions = null      document.getElementById("optionsLink").setAttribute "href", chrome.runtime.getURL("pages/options.html") +    # As the active URL, we choose the most recently registered URL from a frame in the tab, or the tab's own +    # URL. +    url = chrome.extension.getBackgroundPage().urlForTab[tab.id] || tab.url +      updateState = -> -      rule = bgExclusions.getRule tab.url, exclusions.readValueFromElement() +      rule = bgExclusions.getRule url, exclusions.readValueFromElement()        $("state").innerHTML = "Vimium will " +          if rule and rule.passKeys            "exclude <span class='code'>#{rule.passKeys}</span>" @@ -302,7 +306,7 @@ initPopupPage = ->          window.close()      # Populate options. Just one, here. -    exclusions = new ExclusionRulesOnPopupOption(tab.url, "exclusionRules", onUpdated) +    exclusions = new ExclusionRulesOnPopupOption(url, "exclusionRules", onUpdated)      updateState()      document.addEventListener "keyup", updateState  | 
