diff options
Diffstat (limited to 'content_scripts/vimium_frontend.coffee')
| -rw-r--r-- | content_scripts/vimium_frontend.coffee | 8 | 
1 files changed, 5 insertions, 3 deletions
| diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee index 2b90fe95..75b7e58f 100644 --- a/content_scripts/vimium_frontend.coffee +++ b/content_scripts/vimium_frontend.coffee @@ -243,7 +243,7 @@ onFocus = (event) ->    if event.target == window      settings.load()      chrome.runtime.sendMessage handler: "frameFocused", frameId: frameId, url: window.location.toString() -    checkIfEnabledForUrl() +    checkIfEnabledForUrl true  # We install these listeners directly (that is, we don't use installListener) because we still need to receive  # events when Vimium is not enabled. @@ -585,9 +585,11 @@ onKeyup = (event) ->    DomUtils.suppressPropagation(event)    @stopBubblingAndTrue -checkIfEnabledForUrl = -> +# Checks if Vimium should be enabled or not in this frame.  As a side effect, it also informs the background +# page whether this frame has the focus, allowing the background page to track the active frame's URL. +checkIfEnabledForUrl = (frameIsFocused = windowIsFocused()) ->    url = window.location.toString() -  chrome.runtime.sendMessage { handler: "isEnabledForUrl", url: url }, (response) -> +  chrome.runtime.sendMessage { handler: "isEnabledForUrl", url: url, frameIsFocused: frameIsFocused }, (response) ->      { isEnabledForUrl, passKeys } = response      installListeners() # But only if they have not been installed already.      if HUD.isReady() and not isEnabledForUrl | 
