LoginSignup
46
45

More than 5 years have passed since last update.

Atomの編集タブの一つとしてChromeのタブを開く

Last updated at Posted at 2015-01-10

ということができるatomプラグインを作った https://github.com/mizchi/webview-pane

なにができるかはこれをみてほしい。

apm install webview-pane

WebView Pane: Open コマンドが入る

なにができるか

  • ローカルのhtmlを開ける
  • 任意のURLが開ける
  • 内側で開いたwebviewに対して独立したdevtoolsを開く

これでrailsアプリの開発中にlocalhost:3000開きっぱなしみたいなことができる。

どうやったのか

atomのベース部分のatom-shellのchrome拡張由来の機能として、webviewというカスタムタグが実装されている。これはiframeの強化版みたいなもので、別プロセスでタブを開けるという機能。このプラグインはatomのペーン単位としてこれを開いてるだけ。しかもdevtoolsを開けてすごく嬉しい。

バグ

webviewタグがdisplay:noneで非表示になるとGCがクラッシュするというバグがある。これは結構致命的で、タブを背面に回すと壊れることを意味する。(なので現在画面を分割して開いている)
https://github.com/atom/atom-shell/issues/989 でIssueたてたらchrome40が出たら直すよという話だった。
これが治るまでは結構不便かもしれない。とはいえ自分の用途では問題なく使えたのでリリースした。

雑感: webviewタグの信頼感

atom-shell/web-view-tag.md at master · atom/atom-shellに書かれていることは全部できる…と思いきやそう上手くいかない。

↑のバグの他に、ちょくちょく壊れてるっぽい挙動を目にするんだが自分としても安定するの待ってる感じ。

たとえば<webview/>reload() が動かなかったので webview.executeJavaScript('localtion.reload()')で代替している

要望

https://github.com/mizchi/webview-pane/issues までどうぞ

46
45
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
46
45