From df72a1be0213d211645f39f1ec6aeeba4d8e7896 Mon Sep 17 00:00:00 2001 From: mrmr1993 Date: Thu, 20 Apr 2017 17:34:46 +0100 Subject: Blur the focused iframe when restoring window focus This works around FF issue 554039, which prevents window.top.focus() from working. --- content_scripts/vimium_frontend.coffee | 3 +++ 1 file changed, 3 insertions(+) (limited to 'content_scripts/vimium_frontend.coffee') diff --git a/content_scripts/vimium_frontend.coffee b/content_scripts/vimium_frontend.coffee index cdb23352..e84346e1 100644 --- a/content_scripts/vimium_frontend.coffee +++ b/content_scripts/vimium_frontend.coffee @@ -315,6 +315,9 @@ focusThisFrame = (request) -> chrome.runtime.sendMessage handler: "nextFrame" return window.focus() + # On Firefox, window.focus doesn't always draw focus back from a child frame (bug 554039). + # We blur the active element if it is an iframe, which gives the window back focus as intended. + document.activeElement.blur() if document.activeElement.tagName.toLowerCase() == "iframe" flashFrame() if request.highlight extend window, -- cgit v1.2.3