diff options
| -rw-r--r-- | content_scripts/vimium_frontend.coffee | 8 | ||||
| -rw-r--r-- | tests/dom_tests/dom_tests.coffee | 5 |
2 files changed, 8 insertions, 5 deletions
diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee index 729a21bd..5d56ad5b 100644 --- a/content_scripts/vimium_frontend.coffee +++ b/content_scripts/vimium_frontend.coffee @@ -337,11 +337,9 @@ extend window, focusInput: do -> # Track the most recently focused input element. recentlyFocusedElement = null - handlerStack.push - _name: "focus-input-tracker" - focus: (event) -> - recentlyFocusedElement = event.target if DomUtils.isEditable event.target - true + window.addEventListener "focus", + (event) -> recentlyFocusedElement = event.target if DomUtils.isEditable event.target + , true (count) -> # Focus the first input element on the page, and create overlays to highlight all the input elements, with diff --git a/tests/dom_tests/dom_tests.coffee b/tests/dom_tests/dom_tests.coffee index b0ee1a66..11fbe11f 100644 --- a/tests/dom_tests/dom_tests.coffee +++ b/tests/dom_tests/dom_tests.coffee @@ -218,6 +218,11 @@ context "Input focus", focusInput 100 assert.isTrue InsertMode.permanentInstance.isActive() + should "activate the most recently-selected input if the count is 1", -> + focusInput 3 + focusInput 1 + assert.equal "third", document.activeElement.id + should "not trigger insert if there are no inputs", -> document.getElementById("test-div").innerHTML = "" focusInput 1 |
