From f946d23125a80233799564b57253ace2c44b8994 Mon Sep 17 00:00:00 2001 From: mrmr1993 Date: Tue, 30 Dec 2014 15:20:49 +0000 Subject: Reinstate UIComponent.show --- content_scripts/ui_component.coffee | 15 +++++++++------ 1 file changed, 9 insertions(+), 6 deletions(-) diff --git a/content_scripts/ui_component.coffee b/content_scripts/ui_component.coffee index 696cb42c..8b229725 100644 --- a/content_scripts/ui_component.coffee +++ b/content_scripts/ui_component.coffee @@ -38,15 +38,18 @@ class UIComponent @iframeElement.style.border = '5px solid yellow' setTimeout((=> @iframeElement.style.border = borderWas), 200) else - @iframeElement.setAttribute "style", @showStyle - @showing = true + @show() @iframeElement.focus() + show: (message) -> + @postMessage message if message? + @iframeElement.setAttribute "style", @showStyle + @showing = true + hide: (focusWindow = true)-> - if @showing - @iframeElement.setAttribute "style", @hideStyle - window.focus() if focusWindow - @showing = false + @iframeElement.setAttribute "style", @hideStyle + window.focus() if focusWindow + @showing = false root = exports ? window root.UIComponent = UIComponent -- cgit v1.2.3 From 7e6b2c5a8439cf8c1e861e3f596915a75ecb9644 Mon Sep 17 00:00:00 2001 From: mrmr1993 Date: Tue, 30 Dec 2014 15:31:30 +0000 Subject: Use classes and a stylesheet for UIComponen --- content_scripts/ui_component.coffee | 13 ++++++------- content_scripts/vimium.css | 13 +++++++++++++ 2 files changed, 19 insertions(+), 7 deletions(-) diff --git a/content_scripts/ui_component.coffee b/content_scripts/ui_component.coffee index 8b229725..c4ed3bf6 100644 --- a/content_scripts/ui_component.coffee +++ b/content_scripts/ui_component.coffee @@ -2,8 +2,6 @@ class UIComponent iframeElement: null iframePort: null showing: null - showStyle: "display: block;" - hideStyle: "display: none;" constructor: (iframeUrl, className, @handleMessage) -> @iframeElement = document.createElement "iframe" @@ -34,20 +32,21 @@ class UIComponent if @showing # NOTE(smblott) Experimental. Not sure this is a great idea. If the iframe was already showing, then # the user gets no visual feedback when it is re-focused. So flash its border. - borderWas = @iframeElement.style.border - @iframeElement.style.border = '5px solid yellow' - setTimeout((=> @iframeElement.style.border = borderWas), 200) + @iframeElement.classList.add "vimiumUIComponentReactivated" + setTimeout((=> @iframeElement.classList.remove "vimiumUIComponentReactivated"), 200) else @show() @iframeElement.focus() show: (message) -> @postMessage message if message? - @iframeElement.setAttribute "style", @showStyle + @iframeElement.classList.remove "vimiumUIComponentHidden" + @iframeElement.classList.add "vimiumUIComponentShowing" @showing = true hide: (focusWindow = true)-> - @iframeElement.setAttribute "style", @hideStyle + @iframeElement.classList.remove "vimiumUIComponentShowing" + @iframeElement.classList.add "vimiumUIComponentHidden" window.focus() if focusWindow @showing = false diff --git a/content_scripts/vimium.css b/content_scripts/vimium.css index f582824a..ec1a09e6 100644 --- a/content_scripts/vimium.css +++ b/content_scripts/vimium.css @@ -302,3 +302,16 @@ div#vimiumFlash { position: absolute; z-index: 2147483648; } + +/* UIComponent CSS */ +iframe.vimiumUIComponentHidden { + display: none; +} + +iframe.vimiumUIComponentVisible { + display: block; +} + +iframe.vimiumUIComponentReactivated { + border: 5px solid yellow; +} -- cgit v1.2.3