Repository: cordova-browser
Updated Branches:
  refs/heads/master 03c6ee80d -> 86f08b8a3


CB-7978 Fixed launching chrome in Linux

- Fixed launching chrome in linux. It either launches chrome or google-chrome 
processes
- Reads config.xml looking for the source file to be used at the lauching of 
the browser. This will work for Linux, Windows and MacOs


Project: http://git-wip-us.apache.org/repos/asf/cordova-browser/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-browser/commit/87e19e2d
Tree: http://git-wip-us.apache.org/repos/asf/cordova-browser/tree/87e19e2d
Diff: http://git-wip-us.apache.org/repos/asf/cordova-browser/diff/87e19e2d

Branch: refs/heads/master
Commit: 87e19e2d69fadcc4909e9858ec94655436857ffe
Parents: 03c6ee8
Author: Victor Sosa <[email protected]>
Authored: Thu Nov 6 16:13:46 2014 -0600
Committer: Victor Sosa <[email protected]>
Committed: Thu Nov 6 16:13:46 2014 -0600

----------------------------------------------------------------------
 bin/templates/project/cordova/run | 27 +++++++++++++++++++++++++--
 1 file changed, 25 insertions(+), 2 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-browser/blob/87e19e2d/bin/templates/project/cordova/run
----------------------------------------------------------------------
diff --git a/bin/templates/project/cordova/run 
b/bin/templates/project/cordova/run
index 59a7c5c..ce57846 100755
--- a/bin/templates/project/cordova/run
+++ b/bin/templates/project/cordova/run
@@ -20,10 +20,32 @@
 */
 
 var shell = require('shelljs'),
-    spawn = require('child_process').spawn,
-    project = 'file://' + shell.pwd() + '/platforms/browser/www/index.html';
+       fs = require('fs');
+
+var configFile = shell.pwd() + '/config.xml';
+var configXML = fs.readFileSync(configFile, 'utf8');
+var sourceFile = /<content[\s\S]*?src\s*=\s*"(.*?)"/i.exec(configXML); 
+var spawn = require('child_process').spawn,
+    tmpDir = '/tmp/temp_chrome_user_data_dir_for_cordova_browser/',
+    out = fs.openSync(tmpDir + 'out.log', 'a'),
+    err = fs.openSync(tmpDir + 'out.log', 'a'),
+    project = 'file://' + shell.pwd() + '/platforms/browser/www/' + 
sourceFile[1];
 
 switch (process.platform) {
+  case 'linux':
+       var args = ['--disable-web-security', 
'--user-data-dir=/tmp/temp_chrome_user_data_dir_for_cordova_browser', project];
+       var chromeProcess = spawn('chrome', args);
+       
+       chromeProcess.on('close', function(code) {
+               if (code != 0) {
+                       var options = {detached: true, stdio: ['ignore', out, 
err]};
+                       var chromeProcess = spawn('google-chrome', args, 
options);
+                       chromeProcess.unref();
+                       
+               }
+       });
+       
+    break;
   case 'darwin':
     spawn('open', ['-n', '-a', 'Google\ Chrome', '--args', 
'--disable-web-security', 
'--user-data-dir=/tmp/temp_chrome_user_data_dir_for_cordova_browser', project]);
     break;
@@ -34,3 +56,4 @@ switch (process.platform) {
     break;
 }
 
+


---------------------------------------------------------------------
To unsubscribe, e-mail: [email protected]
For additional commands, e-mail: [email protected]

Reply via email to