diff options
| author | mrmr1993 | 2014-12-29 09:33:34 +0000 |
|---|---|---|
| committer | mrmr1993 | 2014-12-29 09:33:34 +0000 |
| commit | 5ea0f75a00b592956981bf8f6f7a0d2fa89620ae (patch) | |
| tree | fc2d8ba0ebdfcd50e6aa7392b3a716c4c0d5ea1a /pages/ui_component_server.coffee | |
| parent | 71af7f016f51e3c8b9c1fcfba46cb8289c91e030 (diff) | |
| download | vimium-5ea0f75a00b592956981bf8f6f7a0d2fa89620ae.tar.bz2 | |
Close UIComponent iframes when pressing esc by default
Diffstat (limited to 'pages/ui_component_server.coffee')
| -rw-r--r-- | pages/ui_component_server.coffee | 9 |
1 files changed, 9 insertions, 0 deletions
diff --git a/pages/ui_component_server.coffee b/pages/ui_component_server.coffee index 240233ed..3879cea0 100644 --- a/pages/ui_component_server.coffee +++ b/pages/ui_component_server.coffee @@ -7,11 +7,13 @@ window.addEventListener "message", (event) -> chrome.storage.local.get "iframeMessageSecret", ({iframeMessageSecret: secret}) -> return unless event.data == secret UIComponentServer.portOpen event.ports[0] + window.addEventListener "keydown", (event) -> UIComponentServer.keydownListener event window.removeEventListener "message", currentFunction # Stop listening for message events. UIComponentServer = ownerPagePort: null messageEventListeners: [] + exitOnEsc: true portOpen: (@ownerPagePort) -> @ownerPagePort.onmessage = (event) => @handleMessage event @@ -37,5 +39,12 @@ UIComponentServer = @messageEventListeners = @messageEventListeners.splice listenerIndex, 1 undefined + keydownListener: (event) -> + if @exitOnEsc and KeyboardUtils.isEscape event + @postMessage "hide" + false + else + true + root = exports ? window root.UIComponentServer = UIComponentServer |
