From 08d18765d792842c1cf455603765dcc600b19e87 Mon Sep 17 00:00:00 2001 From: Koen Punt Date: Wed, 13 Apr 2016 03:11:27 +0200 Subject: [PATCH] =?UTF-8?q?Open=20links=20in=20background=20when=20?= =?UTF-8?q?=E2=8C=98=20key=20is=20pressed=20(#1637)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit When you hold down the meta key (⌘), and click on a link in a message, the target application will not activate, so N1 will stay in the foreground. Electron only supports this for OS X --- package.json | 2 +- src/components/evented-iframe.cjsx | 2 +- src/window-event-handler.coffee | 4 ++-- 3 files changed, 4 insertions(+), 4 deletions(-) diff --git a/package.json b/package.json index 088d4250f..007e0b011 100644 --- a/package.json +++ b/package.json @@ -11,7 +11,7 @@ "bugs": { "url": "https://github.com/nylas/N1/issues" }, - "electronVersion": "0.36.7", + "electronVersion": "0.36.9", "dependencies": { "async": "^0.9", "atom-keymap": "^6.1.1", diff --git a/src/components/evented-iframe.cjsx b/src/components/evented-iframe.cjsx index 07f5bedd6..144e0117b 100644 --- a/src/components/evented-iframe.cjsx +++ b/src/components/evented-iframe.cjsx @@ -151,7 +151,7 @@ class EventedIFrame extends React.Component target.setAttribute('href', "http://#{rawHref}") e.preventDefault() - NylasEnv.windowEventHandler.openLink(target: target) + NylasEnv.windowEventHandler.openLink(target: target, metaKey: e.metaKey) _isBlacklistedHref: (href) -> return (new RegExp(/^file:/i)).test(href) diff --git a/src/window-event-handler.coffee b/src/window-event-handler.coffee index 4361f6224..604013580 100644 --- a/src/window-event-handler.coffee +++ b/src/window-event-handler.coffee @@ -173,7 +173,7 @@ class WindowEventHandler event.preventDefault() event.stopPropagation() - openLink: ({href, target, currentTarget}) -> + openLink: ({href, target, currentTarget, metaKey}) -> if not href href = target?.getAttribute('href') or currentTarget?.getAttribute('href') @@ -191,7 +191,7 @@ class WindowEventHandler href = encodeURI(decodeURI(href)) remote.getGlobal('application').openUrl(href) else if schema in ['http:', 'https:', 'tel:'] - shell.openExternal(href) + shell.openExternal(href, activate: !metaKey) return