Add basic support for window.open's features.
authorCheng Zhao <zcbenz@gmail.com>
Fri, 27 Dec 2013 06:57:53 +0000 (14:57 +0800)
committerCheng Zhao <zcbenz@gmail.com>
Fri, 27 Dec 2013 06:57:53 +0000 (14:57 +0800)
renderer/lib/init.coffee

index 4d03ab0..30e1de4 100644 (file)
@@ -61,8 +61,25 @@ window.onerror = (error) ->
     false
 
 # Override default window.open.
-window.open = (url) ->
+window.open = (url, name, features) ->
+  options = {}
+  for feature in features.split ','
+    [name, value] = feature.split '='
+    options[name] =
+      if value is 'yes'
+        true
+      else if value is 'no'
+        false
+      else
+        value
+
+  options.x ?= options.left
+  options.y ?= options.top
+  options.title ?= name
+  options.width ?= 800
+  options.height ?= 600
+
   BrowserWindow = require('remote').require 'browser-window'
-  browser = new BrowserWindow width: 800, height: 600
+  browser = new BrowserWindow options
   browser.loadUrl url
   browser