LoginSignup
18
15

More than 3 years have passed since last update.

Electron で Open Links In Background

Last updated at Posted at 2015-10-14

qiita.gif

TweetBot for Mac にある Open Links In Background を Electron で実装したかった。
これはアプリを最前面に維持しつつURLリンクを開く機能で、とりあえずURL開きまくって後でまとめて見たい時に便利。
実装方法としては、shell.openExternal で URL を開いた直後に window.setAlwaysOnTop(true) でウィンドウをトップに持って行き、直後window.setAlwaysOnTop(false)で状態を戻します。
以下コード。(他にいい方法あったら教えてください)

MainProcess


var ipc = require('ipc');

let window = new BrowserWindow({
  width: 600,
  height: 800,
  'always-on-top': false,
});
window.loadUrl(`file://${__dirname}/../index.html`);

ipc.on('pullToTop', () => {
  window.setAlwaysOnTop(true);
  setTimeout(() => { this.window.setAlwaysOnTop(false) }, 1000); // 1000ms より短すぎるとウィンドウが全面に来なくて微妙...
});
RendererProcess
var ipc = require('ipc');

$(document).on('click', 'a', function() {
  shell.openExternal(this.href);
  ipc.send('pullToTop');
  return false;
});
18
15
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
18
15