From ec95cc2573526355c336f0f11b45ee608470a78b Mon Sep 17 00:00:00 2001 From: mrmr1993 Date: Tue, 15 Aug 2017 22:24:30 +0100 Subject: FF: Show HUD (transparently) when pasting, manage focus changes better --- content_scripts/hud.coffee | 11 ++++++++++- pages/hud.coffee | 1 + 2 files changed, 11 insertions(+), 1 deletion(-) diff --git a/content_scripts/hud.coffee b/content_scripts/hud.coffee index d4c38447..42a960da 100644 --- a/content_scripts/hud.coffee +++ b/content_scripts/hud.coffee @@ -97,11 +97,20 @@ HUD = pasteFromClipboard: (@pasteListener) -> DomUtils.documentComplete => @init() - @hudUI?.postMessage {name: "pasteFromClipboard"} + # Show the HUD frame, so Firefox will actually perform the paste. + @hudUI.toggleIframeElementClasses "vimiumUIComponentHidden", "vimiumUIComponentVisible" + @tween.fade 0, 0 + @hudUI.postMessage {name: "pasteFromClipboard"} pasteResponse: ({data}) -> + # Hide the HUD frame again. + @hudUI.toggleIframeElementClasses "vimiumUIComponentVisible", "vimiumUIComponentHidden" + @unfocusIfFocused() @pasteListener data + unfocusIfFocused: -> + document.activeElement.blur() if document.activeElement == @hudUI?.iframeElement + class Tween opacity: 0 intervalId: -1 diff --git a/pages/hud.coffee b/pages/hud.coffee index f894a66c..99aaa2ac 100644 --- a/pages/hud.coffee +++ b/pages/hud.coffee @@ -100,6 +100,7 @@ handlers = Clipboard.copy data focusedElement?.focus() window.parent.focus() + UIComponentServer.postMessage {name: "unfocusIfFocused", data} pasteFromClipboard: -> focusedElement = document.activeElement -- cgit v1.2.3