From 6ae4e124efc22de093f67df1a2e3aa626f78e98d Mon Sep 17 00:00:00 2001 From: mrmr1993 Date: Fri, 28 Nov 2014 18:04:17 +0000 Subject: Clear all keydown events that correspond to a keyup event --- content_scripts/vimium_frontend.coffee | 17 +++++++---------- 1 file changed, 7 insertions(+), 10 deletions(-) diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee index d5586bd8..487012dd 100644 --- a/content_scripts/vimium_frontend.coffee +++ b/content_scripts/vimium_frontend.coffee @@ -475,16 +475,13 @@ onKeyup = (event) -> return if isInsertMode() # Don't propagate the keyup to the underlying page if Vimium has handled it. See #733. - for keydown, i in handledKeydownEvents - if event.metaKey == keydown.metaKey and - event.altKey == keydown.altKey and - event.ctrlKey == keydown.ctrlKey and - event.keyIdentifier == keydown.keyIdentifier and - event.keyCode == keydown.keyCode - - handledKeydownEvents.splice i, 1 - DomUtils.suppressPropagation(event) - break + handledKeydownEvents = handledKeydownEvents.filter (keydown) -> + (event.metaKey != keydown.metaKey or + event.altKey != keydown.altKey or + event.ctrlKey != keydown.ctrlKey or + event.keyIdentifier != keydown.keyIdentifier or + event.keyCode != keydown.keyCode) and + DomUtils.suppressPropagation(event) # Suppress the event if we found a corresponding keydown checkIfEnabledForUrl = -> url = window.location.toString() -- cgit v1.2.3