aboutsummaryrefslogtreecommitdiffstats
path: root/content_scripts
diff options
context:
space:
mode:
authorStephen Blott2016-04-05 06:41:56 +0100
committerStephen Blott2016-04-05 06:53:48 +0100
commit17a24b4b3df24c5b3a354dd195e2f4fe3e4bfb54 (patch)
tree5090f77535d7b8bb1f2b8d68d2c0dd01ebab17e7 /content_scripts
parent84bea357c879090a833b096c00be5c4318d48c4f (diff)
downloadvimium-17a24b4b3df24c5b3a354dd195e2f4fe3e4bfb54.tar.bz2
Unregister frame on "unload".
It seems we cannot rely on the port being disconnected to unregister a frame. So we need to unregister it on "unload".
Diffstat (limited to 'content_scripts')
-rw-r--r--content_scripts/link_hints.coffee2
-rw-r--r--content_scripts/vimium_frontend.coffee2
2 files changed, 3 insertions, 1 deletions
diff --git a/content_scripts/link_hints.coffee b/content_scripts/link_hints.coffee
index cef4b480..e650463f 100644
--- a/content_scripts/link_hints.coffee
+++ b/content_scripts/link_hints.coffee
@@ -72,7 +72,7 @@ HintCoordinator =
# FIXME(smblott) Global link hints is currently insufficiently reliable. If the mode above is left in
# place, then Vimium blocks. As a temporary measure, we install a timer to remove it.
unless @debug
- Utils.setTimeout 1000, => @suppressKeyboardEvents.exit() if @suppressKeyboardEvents.modeIsActive
+ Utils.setTimeout 1000, => @suppressKeyboardEvents.exit() if @suppressKeyboardEvents?.modeIsActive
@onExit = [onExit]
@sendMessage "prepareToActivateMode", modeIndex: availableModes.indexOf mode
diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee
index b73bd2e3..d9fc363e 100644
--- a/content_scripts/vimium_frontend.coffee
+++ b/content_scripts/vimium_frontend.coffee
@@ -244,6 +244,8 @@ Frame =
isEnabledForUrl = false
window.removeEventListener "focus", onFocus
+ window.addEventListener "unload", => @postMessage "unregsterFrame"
+
setScrollPosition = ({ scrollX, scrollY }) ->
if DomUtils.isTopFrame()
DomUtils.documentReady ->