You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by ti...@apache.org on 2020/07/02 15:41:29 UTC

[cordova-plugin-inappbrowser] branch master updated: refactor(eslint): use cordova-eslint /w fix (#747)

This is an automated email from the ASF dual-hosted git repository.

timbru31 pushed a commit to branch master
in repository https://gitbox.apache.org/repos/asf/cordova-plugin-inappbrowser.git


The following commit(s) were added to refs/heads/master by this push:
     new 7c2810e  refactor(eslint): use cordova-eslint /w fix (#747)
7c2810e is described below

commit 7c2810e885e6269fdafb84d754786016ce2d1f82
Author: Tim Brust <gi...@timbrust.de>
AuthorDate: Thu Jul 2 15:41:21 2020 +0000

    refactor(eslint): use cordova-eslint /w fix (#747)
---
 .eslintrc.yml                    |  31 +-
 package.json                     |  12 +-
 src/browser/InAppBrowserProxy.js |  30 +-
 src/windows/InAppBrowserProxy.js |  74 ++--
 tests/resources/inject.js        |   3 +-
 tests/tests.js                   | 767 ++++++++++++++++++++++++++-------------
 www/inappbrowser.js              |  18 +-
 7 files changed, 621 insertions(+), 314 deletions(-)

diff --git a/.eslintrc.yml b/.eslintrc.yml
index 0cccb8c..17277f7 100644
--- a/.eslintrc.yml
+++ b/.eslintrc.yml
@@ -1,10 +1,23 @@
+# Licensed to the Apache Software Foundation (ASF) under one
+# or more contributor license agreements.  See the NOTICE file
+# distributed with this work for additional information
+# regarding copyright ownership.  The ASF licenses this file
+# to you under the Apache License, Version 2.0 (the
+# "License"); you may not use this file except in compliance
+# with the License.  You may obtain a copy of the License at
+#
+#   http://www.apache.org/licenses/LICENSE-2.0
+#
+# Unless required by applicable law or agreed to in writing,
+# software distributed under the License is distributed on an
+# "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+# KIND, either express or implied.  See the License for the
+# specific language governing permissions and limitations
+# under the License.
+
 root: true
-extends: semistandard
-rules:
-  indent:
-    - error
-    - 4
-  camelcase: off
-  padded-blocks: off
-  operator-linebreak: off
-  no-throw-literal: off
\ No newline at end of file
+extends: '@cordova/eslint-config/browser'
+
+overrides:
+    - files: [tests/**/*.js]
+      extends: '@cordova/eslint-config/node-tests'
diff --git a/package.json b/package.json
index 1dbacf7..2d8f097 100644
--- a/package.json
+++ b/package.json
@@ -34,8 +34,8 @@
     "cordova-windows"
   ],
   "scripts": {
-    "test": "npm run eslint",
-    "eslint": "node node_modules/eslint/bin/eslint www && node node_modules/eslint/bin/eslint src && node node_modules/eslint/bin/eslint tests"
+    "test": "npm run lint",
+    "lint": "eslint ."
   },
   "engines": {
     "cordovaDependencies": {
@@ -54,12 +54,6 @@
   "author": "Apache Software Foundation",
   "license": "Apache-2.0",
   "devDependencies": {
-    "eslint": "^4.0.0",
-    "eslint-config-semistandard": "^11.0.0",
-    "eslint-config-standard": "^10.2.1",
-    "eslint-plugin-import": "^2.3.0",
-    "eslint-plugin-node": "^5.0.0",
-    "eslint-plugin-promise": "^3.5.0",
-    "eslint-plugin-standard": "^3.0.1"
+    "@cordova/eslint-config": "^3.0.0"
   }
 }
diff --git a/src/browser/InAppBrowserProxy.js b/src/browser/InAppBrowserProxy.js
index 1c62574..9b95b35 100644
--- a/src/browser/InAppBrowserProxy.js
+++ b/src/browser/InAppBrowserProxy.js
@@ -17,43 +17,37 @@
  * specific language governing permissions and limitations
  * under the License.
  *
-*/
+ */
 
 var modulemapper = require('cordova/modulemapper');
 
-var browserWrap,
-    popup,
-    navigationButtonsDiv,
-    navigationButtonsDivInner,
-    backButton,
-    forwardButton,
-    closeButton;
+var browserWrap, popup, navigationButtonsDiv, navigationButtonsDivInner, backButton, forwardButton, closeButton;
 
 function attachNavigationEvents (element, callback) {
     var onError = function () {
         try {
-            callback({ type: 'loaderror', url: this.contentWindow.location.href }, {keepCallback: true}); // eslint-disable-line standard/no-callback-literal
+            callback({ type: 'loaderror', url: this.contentWindow.location.href }, { keepCallback: true }); // eslint-disable-line standard/no-callback-literal
         } catch (err) {
             // blocked by CORS :\
-            callback({ type: 'loaderror', url: null }, {keepCallback: true}); // eslint-disable-line standard/no-callback-literal
+            callback({ type: 'loaderror', url: null }, { keepCallback: true }); // eslint-disable-line standard/no-callback-literal
         }
     };
 
     element.addEventListener('pageshow', function () {
         try {
-            callback({ type: 'loadstart', url: this.contentWindow.location.href }, {keepCallback: true}); // eslint-disable-line standard/no-callback-literal
+            callback({ type: 'loadstart', url: this.contentWindow.location.href }, { keepCallback: true }); // eslint-disable-line standard/no-callback-literal
         } catch (err) {
             // blocked by CORS :\
-            callback({ type: 'loadstart', url: null }, {keepCallback: true}); // eslint-disable-line standard/no-callback-literal
+            callback({ type: 'loadstart', url: null }, { keepCallback: true }); // eslint-disable-line standard/no-callback-literal
         }
     });
 
     element.addEventListener('load', function () {
         try {
-            callback({ type: 'loadstop', url: this.contentWindow.location.href }, {keepCallback: true}); // eslint-disable-line standard/no-callback-literal
+            callback({ type: 'loadstop', url: this.contentWindow.location.href }, { keepCallback: true }); // eslint-disable-line standard/no-callback-literal
         } catch (err) {
             // blocked by CORS :\
-            callback({ type: 'loadstop', url: null }, {keepCallback: true}); // eslint-disable-line standard/no-callback-literal
+            callback({ type: 'loadstop', url: null }, { keepCallback: true }); // eslint-disable-line standard/no-callback-literal
         }
     });
 
@@ -153,7 +147,9 @@ var IAB = {
 
                 backButton.innerHTML = '←';
                 backButton.addEventListener('click', function (e) {
-                    if (popup.canGoBack) { popup.goBack(); }
+                    if (popup.canGoBack) {
+                        popup.goBack();
+                    }
                 });
 
                 forwardButton = document.createElement('button');
@@ -164,7 +160,9 @@ var IAB = {
 
                 forwardButton.innerHTML = '→';
                 forwardButton.addEventListener('click', function (e) {
-                    if (popup.canGoForward) { popup.goForward(); }
+                    if (popup.canGoForward) {
+                        popup.goForward();
+                    }
                 });
 
                 closeButton = document.createElement('button');
diff --git a/src/windows/InAppBrowserProxy.js b/src/windows/InAppBrowserProxy.js
index 9e544c5..29277be 100644
--- a/src/windows/InAppBrowserProxy.js
+++ b/src/windows/InAppBrowserProxy.js
@@ -17,11 +17,10 @@
  * specific language governing permissions and limitations
  * under the License.
  *
-*/
+ */
 
-/* jslint sloppy:true */
-/* global Windows:true, setImmediate */
-/* eslint standard/no-callback-literal : 0 */
+/* eslint-disable standard/no-callback-literal */
+/* global Windows, setImmediate */
 
 var cordova = require('cordova');
 var urlutil = require('cordova/urlutil');
@@ -44,21 +43,32 @@ var isWebViewAvailable = cordova.platformId === 'windows';
 function attachNavigationEvents (element, callback) {
     if (isWebViewAvailable) {
         element.addEventListener('MSWebViewNavigationStarting', function (e) {
-            callback({ type: 'loadstart', url: e.uri }, {keepCallback: true});
+            callback({ type: 'loadstart', url: e.uri }, { keepCallback: true });
         });
 
         element.addEventListener('MSWebViewNavigationCompleted', function (e) {
             if (e.isSuccess) {
                 callback({ type: 'loadstop', url: e.uri }, { keepCallback: true });
             } else {
-                callback({ type: 'loaderror', url: e.uri, code: e.webErrorStatus, message: 'Navigation failed with error code ' + e.webErrorStatus }, { keepCallback: true });
+                callback(
+                    {
+                        type: 'loaderror',
+                        url: e.uri,
+                        code: e.webErrorStatus,
+                        message: 'Navigation failed with error code ' + e.webErrorStatus
+                    },
+                    { keepCallback: true }
+                );
             }
         });
 
         element.addEventListener('MSWebViewUnviewableContentIdentified', function (e) {
             // WebView found the content to be not HTML.
             // http://msdn.microsoft.com/en-us/library/windows/apps/dn609716.aspx
-            callback({ type: 'loaderror', url: e.uri, code: e.webErrorStatus, message: 'Navigation failed with error code ' + e.webErrorStatus }, { keepCallback: true });
+            callback(
+                { type: 'loaderror', url: e.uri, code: e.webErrorStatus, message: 'Navigation failed with error code ' + e.webErrorStatus },
+                { keepCallback: true }
+            );
         });
 
         element.addEventListener('MSWebViewContentLoading', function (e) {
@@ -78,15 +88,15 @@ function attachNavigationEvents (element, callback) {
         });
     } else {
         var onError = function () {
-            callback({ type: 'loaderror', url: this.contentWindow.location }, {keepCallback: true});
+            callback({ type: 'loaderror', url: this.contentWindow.location }, { keepCallback: true });
         };
 
         element.addEventListener('unload', function () {
-            callback({ type: 'loadstart', url: this.contentWindow.location }, {keepCallback: true});
+            callback({ type: 'loadstart', url: this.contentWindow.location }, { keepCallback: true });
         });
 
         element.addEventListener('load', function () {
-            callback({ type: 'loadstop', url: this.contentWindow.location }, {keepCallback: true});
+            callback({ type: 'loadstop', url: this.contentWindow.location }, { keepCallback: true });
         });
 
         element.addEventListener('error', onError);
@@ -175,7 +185,8 @@ var IAB = {
                 }
 
                 popup = document.createElement(isWebViewAvailable ? 'x-ms-webview' : 'iframe');
-                if (popup instanceof HTMLIFrameElement) { // eslint-disable-line no-undef
+                if (popup instanceof HTMLIFrameElement) {
+                    // eslint-disable-line no-undef
                     // For iframe we need to override bacground color of parent element here
                     // otherwise pages without background color set will have transparent background
                     popup.style.backgroundColor = 'white';
@@ -240,14 +251,18 @@ var IAB = {
                     backButton.innerText = 'back';
                     backButton.className = 'app-bar-action action-back';
                     backButton.addEventListener('click', function (e) {
-                        if (popup.canGoBack) { popup.goBack(); }
+                        if (popup.canGoBack) {
+                            popup.goBack();
+                        }
                     });
 
                     forwardButton = document.createElement('div');
                     forwardButton.innerText = 'forward';
                     forwardButton.className = 'app-bar-action action-forward';
                     forwardButton.addEventListener('click', function (e) {
-                        if (popup.canGoForward) { popup.goForward(); }
+                        if (popup.canGoForward) {
+                            popup.goForward();
+                        }
                     });
 
                     closeButton = document.createElement('div');
@@ -292,11 +307,11 @@ var IAB = {
                 op.oncomplete = function (e) {
                     if (hasCallback) {
                         // return null if event target is unavailable by some reason
-                        var result = (e && e.target) ? [e.target.result] : [null];
+                        var result = e && e.target ? [e.target.result] : [null];
                         win(result);
                     }
                 };
-                op.onerror = function () { };
+                op.onerror = function () {};
                 op.start();
             }
         });
@@ -323,7 +338,7 @@ var IAB = {
                                 win(result);
                             }
                         };
-                        op.onerror = function () { };
+                        op.onerror = function () {};
                         op.start();
                     });
                 });
@@ -352,13 +367,18 @@ var IAB = {
             if (isWebViewAvailable && browserWrap && popup) {
                 // CB-12364 getFileFromApplicationUriAsync does not support ms-appx-web
                 var uri = new Windows.Foundation.Uri(filePath.replace('ms-appx-web:', 'ms-appx:'));
-                Windows.Storage.StorageFile.getFileFromApplicationUriAsync(uri).then(function (file) {
-                    return Windows.Storage.FileIO.readTextAsync(file);
-                }).done(function (code) {
-                    injectCSS(popup, code, hasCallback && win);
-                }, function () {
-                    // no-op, just catch an error
-                });
+                Windows.Storage.StorageFile.getFileFromApplicationUriAsync(uri)
+                    .then(function (file) {
+                        return Windows.Storage.FileIO.readTextAsync(file);
+                    })
+                    .done(
+                        function (code) {
+                            injectCSS(popup, code, hasCallback && win);
+                        },
+                        function () {
+                            // no-op, just catch an error
+                        }
+                    );
             }
         });
     }
@@ -367,8 +387,10 @@ var IAB = {
 function injectCSS (webView, cssCode, callback) {
     // This will automatically escape all thing that we need (quotes, slashes, etc.)
     var escapedCode = JSON.stringify(cssCode);
-    var evalWrapper = '(function(d){var c=d.createElement(\'style\');c.innerHTML=%s;d.head.appendChild(c);})(document)'
-        .replace('%s', escapedCode);
+    var evalWrapper = "(function(d){var c=d.createElement('style');c.innerHTML=%s;d.head.appendChild(c);})(document)".replace(
+        '%s',
+        escapedCode
+    );
 
     var op = webView.invokeScriptAsync('eval', evalWrapper);
     op.oncomplete = function () {
@@ -376,7 +398,7 @@ function injectCSS (webView, cssCode, callback) {
             callback([]);
         }
     };
-    op.onerror = function () { };
+    op.onerror = function () {};
     op.start();
 }
 
diff --git a/tests/resources/inject.js b/tests/resources/inject.js
index d704ab3..bf94d4e 100644
--- a/tests/resources/inject.js
+++ b/tests/resources/inject.js
@@ -15,6 +15,7 @@
  * KIND, either express or implied.  See the License for the
  * specific language governing permissions and limitations
  * under the License.
-*/
+ */
+
 var d = document.getElementById('header');
 d.innerHTML = 'Script file successfully injected';
diff --git a/tests/tests.js b/tests/tests.js
index 85d5eba..150a3c4 100644
--- a/tests/tests.js
+++ b/tests/tests.js
@@ -17,7 +17,7 @@
  * specific language governing permissions and limitations
  * under the License.
  *
-*/
+ */
 
 /* global MSApp */
 
@@ -38,7 +38,6 @@ exports.defineAutoTests = function () {
         platformOpts = platformOpts || '';
 
         describe('cordova.InAppBrowser', function () {
-
             it('inappbrowser.spec.1 should exist', function () {
                 expect(cordova.InAppBrowser).toBeDefined();
             });
@@ -50,7 +49,6 @@ exports.defineAutoTests = function () {
         });
 
         describe('open method', function () {
-
             if (cordova.platformId === 'osx') {
                 pending('Open method not fully supported on OSX.');
                 return;
@@ -62,7 +60,7 @@ exports.defineAutoTests = function () {
             var badUrl = 'http://bad-uri/';
 
             beforeEach(function () {
-            // increase timeout to ensure test url could be loaded within test time
+                // increase timeout to ensure test url could be loaded within test time
                 originalTimeout = jasmine.DEFAULT_TIMEOUT_INTERVAL;
                 jasmine.DEFAULT_TIMEOUT_INTERVAL = 30000;
 
@@ -70,7 +68,7 @@ exports.defineAutoTests = function () {
             });
 
             afterEach(function (done) {
-            // restore original timeout
+                // restore original timeout
                 jasmine.DEFAULT_TIMEOUT_INTERVAL = originalTimeout;
 
                 if (iabInstance !== null && iabInstance.close) {
@@ -122,8 +120,8 @@ exports.defineAutoTests = function () {
                 iabInstance.addEventListener('loadstop', function (evt) {
                     verifyEvent(evt, 'loadstop');
                     if (!isBrowser) {
-                    // according to documentation, "loadstart" event is not supported on browser
-                    // https://github.com/apache/cordova-plugin-inappbrowser#browser-quirks-1
+                        // according to documentation, "loadstart" event is not supported on browser
+                        // https://github.com/apache/cordova-plugin-inappbrowser#browser-quirks-1
                         expect(onLoadStart).toHaveBeenCalled();
                     }
                     done();
@@ -144,9 +142,9 @@ exports.defineAutoTests = function () {
 
             it('inappbrowser.spec.6 should support loaderror event', function (done) {
                 if (isBrowser) {
-                // according to documentation, "loaderror" event is not supported on browser
-                // https://github.com/apache/cordova-plugin-inappbrowser#browser-quirks-1
-                    pending('Browser platform doesn\'t support loaderror event');
+                    // according to documentation, "loaderror" event is not supported on browser
+                    // https://github.com/apache/cordova-plugin-inappbrowser#browser-quirks-1
+                    pending("Browser platform doesn't support loaderror event");
                 }
                 iabInstance = cordova.InAppBrowser.open(badUrl, '_blank', platformOpts);
                 iabInstance.addEventListener('loaderror', function (evt) {
@@ -157,7 +155,7 @@ exports.defineAutoTests = function () {
 
             it('inappbrowser.spec.7 should support message event', function (done) {
                 if (!isAndroid && !isIos) {
-                    return pending(cordova.platformId + ' platform doesn\'t support message event');
+                    return pending(cordova.platformId + " platform doesn't support message event");
                 }
                 var messageKey = 'my_message';
                 var messageValue = 'is_this';
@@ -172,13 +170,17 @@ exports.defineAutoTests = function () {
                     done();
                 });
                 iabInstance.addEventListener('loadstop', function (evt) {
-                    var code = '(function(){\n' +
-                        '    var message = {' + messageKey + ': "' + messageValue + '"};\n' +
+                    var code =
+                        '(function(){\n' +
+                        '    var message = {' +
+                        messageKey +
+                        ': "' +
+                        messageValue +
+                        '"};\n' +
                         '    webkit.messageHandlers.cordova_iab.postMessage(JSON.stringify(message));\n' +
                         '})()';
                     iabInstance.executeScript({ code: code });
                 });
-
             });
         });
     };
@@ -186,7 +188,6 @@ exports.defineAutoTests = function () {
 };
 
 exports.defineManualTests = function (contentEl, createActionButton) {
-
     var platformOpts = '';
     var platform_info = '';
 
@@ -200,10 +201,10 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         var wasReset = false;
         function reset () {
             counts = {
-                'loaderror': 0,
-                'loadstart': 0,
-                'loadstop': 0,
-                'exit': 0
+                loaderror: 0,
+                loadstart: 0,
+                loadstop: 0,
+                exit: 0
             };
             lastLoadStartURL = '';
         }
@@ -243,15 +244,20 @@ exports.defineManualTests = function (contentEl, createActionButton) {
             // Verify the right number of loadstart events were fired.
             if (e.type === 'loadstop' || e.type === 'loaderror') {
                 if (e.url !== lastLoadStartURL) {
-                    alert('Unexpected: ' + e.type + ' event.url != loadstart\'s event.url'); // eslint-disable-line no-undef
+                    alert('Unexpected: ' + e.type + " event.url != loadstart's event.url"); // eslint-disable-line no-undef
                 }
                 if (numExpectedRedirects === 0 && counts.loadstart !== 1) {
                     // Do allow a loaderror without a loadstart (e.g. in the case of an invalid URL).
                     if (!(e.type === 'loaderror' && counts.loadstart === 0)) {
                         alert('Unexpected: got multiple loadstart events. (' + counts.loadstart + ')'); // eslint-disable-line no-undef
                     }
-                } else if (numExpectedRedirects > 0 && counts.loadstart < (numExpectedRedirects + 1)) {
-                    alert('Unexpected: should have got at least ' + (numExpectedRedirects + 1) + ' loadstart events, but got ' + counts.loadstart); // eslint-disable-line no-undef
+                } else if (numExpectedRedirects > 0 && counts.loadstart < numExpectedRedirects + 1) {
+                    alert(
+                        'Unexpected: should have got at least ' +
+                            (numExpectedRedirects + 1) +
+                            ' loadstart events, but got ' +
+                            counts.loadstart
+                    ); // eslint-disable-line no-undef
                 }
                 wasReset = true;
                 numExpectedRedirects = 0;
@@ -273,7 +279,7 @@ exports.defineManualTests = function (contentEl, createActionButton) {
 
     function doHookOpen (url, target, params, numExpectedRedirects) {
         var originalFunc = window.open;
-        var wasClobbered = window.hasOwnProperty('open');
+        var wasClobbered = Object.prototype.hasOwnProperty.call(window, 'open');
         window.open = cordova.InAppBrowser.open;
 
         try {
@@ -295,7 +301,7 @@ exports.defineManualTests = function (contentEl, createActionButton) {
                 alert('Results verified'); // eslint-disable-line no-undef
             } else {
                 console.log(results);
-                alert('Got: ' + typeof (results) + '\n' + JSON.stringify(results)); // eslint-disable-line no-undef
+                alert('Got: ' + typeof results + '\n' + JSON.stringify(results)); // eslint-disable-line no-undef
             }
         };
         if (cssUrl) {
@@ -304,8 +310,7 @@ exports.defineManualTests = function (contentEl, createActionButton) {
             });
         } else {
             iab.addEventListener('loadstop', function (event) {
-                iab.insertCSS({ code: '#style-update-literal { \ndisplay: block !important; \n}' },
-                    useCallback && callback);
+                iab.insertCSS({ code: '#style-update-literal { \ndisplay: block !important; \n}' }, useCallback && callback);
             });
         }
     }
@@ -314,37 +319,48 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         var iab = doOpen(url, '_blank', 'location=yes');
         if (jsUrl) {
             iab.addEventListener('loadstop', function (event) {
-                iab.executeScript({ file: jsUrl }, useCallback && function (results) {
-                    if (results && results.length === 0) {
-                        alert('Results verified'); // eslint-disable-line no-undef
-                    } else {
-                        console.log(results);
-                        alert('Got: ' + typeof (results) + '\n' + JSON.stringify(results)); // eslint-disable-line no-undef
-                    }
-                });
+                iab.executeScript(
+                    { file: jsUrl },
+                    useCallback &&
+                        function (results) {
+                            if (results && results.length === 0) {
+                                alert('Results verified'); // eslint-disable-line no-undef
+                            } else {
+                                console.log(results);
+                                alert('Got: ' + typeof results + '\n' + JSON.stringify(results)); // eslint-disable-line no-undef
+                            }
+                        }
+                );
             });
         } else {
             iab.addEventListener('loadstop', function (event) {
-                var code = '(function(){\n' +
-                  '    var header = document.getElementById("header");\n' +
-                  '    header.innerHTML = "Script literal successfully injected";\n' +
-                  '    return "abc";\n' +
-                  '})()';
-                iab.executeScript({ code: code }, useCallback && function (results) {
-                    if (results && results.length === 1 && results[0] === 'abc') {
-                        alert('Results verified'); // eslint-disable-line no-undef
-                    } else {
-                        console.log(results);
-                        alert('Got: ' + typeof (results) + '\n' + JSON.stringify(results)); // eslint-disable-line no-undef
-                    }
-                });
+                var code =
+                    '(function(){\n' +
+                    '    var header = document.getElementById("header");\n' +
+                    '    header.innerHTML = "Script literal successfully injected";\n' +
+                    '    return "abc";\n' +
+                    '})()';
+                iab.executeScript(
+                    { code: code },
+                    useCallback &&
+                        function (results) {
+                            if (results && results.length === 1 && results[0] === 'abc') {
+                                alert('Results verified'); // eslint-disable-line no-undef
+                            } else {
+                                console.log(results);
+                                alert('Got: ' + typeof results + '\n' + JSON.stringify(results)); // eslint-disable-line no-undef
+                            }
+                        }
+                );
             });
         }
     }
     var hiddenwnd = null;
-    var loadlistener = function (event) { alert('background window loaded '); }; // eslint-disable-line no-undef
+    var loadlistener = function (event) {
+        alert('background window loaded ');
+    }; // eslint-disable-line no-undef
     function openHidden (url, startHidden) {
-        var shopt = (startHidden) ? 'hidden=yes' : '';
+        var shopt = startHidden ? 'hidden=yes' : '';
         if (platformOpts) {
             shopt += (shopt ? ',' : '') + platformOpts;
         }
@@ -368,7 +384,8 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         }
     }
 
-    var info_div = '<h1>InAppBrowser</h1>' +
+    var info_div =
+        '<h1>InAppBrowser</h1>' +
         '<div id="info">' +
         'Make sure http://cordova.apache.org and http://google.co.uk and https://www.google.co.uk are white listed. </br>' +
         'Make sure http://www.apple.com is not in the white list.</br>' +
@@ -376,7 +393,8 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<h4>User-Agent: <span id="user-agent"> </span></hr>' +
         '</div>';
 
-    var local_tests = '<h1>Local URL</h1>' +
+    var local_tests =
+        '<h1>Local URL</h1>' +
         '<div id="openLocal"></div>' +
         'Expected result: opens successfully in CordovaWebView.' +
         '<p/> <div id="openLocalHook"></div>' +
@@ -396,7 +414,8 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<p/><div id="openLocalRandomToolBarTopNoLocation"></div>' +
         'Expected result: open successfully in InAppBrowser with no locationBar. On iOS the toolbar is at the top.';
 
-    var white_listed_tests = '<h1>White Listed URL</h1>' +
+    var white_listed_tests =
+        '<h1>White Listed URL</h1>' +
         '<div id="openWhiteListed"></div>' +
         'Expected result: open successfully in CordovaWebView to cordova.apache.org' +
         '<p/> <div id="openWhiteListedHook"></div>' +
@@ -412,7 +431,8 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<p/> <div id="openWhiteListedRandomNoLocation"></div>' +
         'Expected result: open successfully in InAppBrowser to cordova.apache.org with no location bar.';
 
-    var non_white_listed_tests = '<h1>Non White Listed URL</h1>' +
+    var non_white_listed_tests =
+        '<h1>Non White Listed URL</h1>' +
         '<div id="openNonWhiteListed"></div>' +
         'Expected result: open successfully in InAppBrowser to apple.com.' +
         '<p/> <div id="openNonWhiteListedHook"></div>' +
@@ -428,19 +448,22 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<p/> <div id="openNonWhiteListedRandomNoLocation"></div>' +
         'Expected result: open successfully in InAppBrowser to apple.com without locationBar.';
 
-    var page_with_redirects_tests = '<h1>Page with redirect</h1>' +
+    var page_with_redirects_tests =
+        '<h1>Page with redirect</h1>' +
         '<div id="openRedirect301"></div>' +
         'Expected result: should 301 and open successfully in InAppBrowser to https://www.google.co.uk.' +
         '<p/> <div id="openRedirect302"></div>' +
         'Expected result: should 302 and open successfully in InAppBrowser to www.zhihu.com/answer/16714076.';
 
-    var pdf_url_tests = '<h1>PDF URL</h1>' +
+    var pdf_url_tests =
+        '<h1>PDF URL</h1>' +
         '<div id="openPDF"></div>' +
         'Expected result: InAppBrowser opens. PDF should render on iOS.' +
         '<p/> <div id="openPDFBlank"></div>' +
         'Expected result: InAppBrowser opens. PDF should render on iOS.';
 
-    var invalid_url_tests = '<h1>Invalid URL</h1>' +
+    var invalid_url_tests =
+        '<h1>Invalid URL</h1>' +
         '<div id="openInvalidScheme"></div>' +
         'Expected result: fail to load in InAppBrowser.' +
         '<p/> <div id="openInvalidHost"></div>' +
@@ -448,7 +471,8 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<p/> <div id="openInvalidMissing"></div>' +
         'Expected result: fail to load in InAppBrowser (404).';
 
-    var css_js_injection_tests = '<h1>CSS / JS Injection</h1>' +
+    var css_js_injection_tests =
+        '<h1>CSS / JS Injection</h1>' +
         '<div id="openOriginalDocument"></div>' +
         'Expected result: open successfully in InAppBrowser without text "Style updated from..."' +
         '<p/> <div id="openCSSInjection"></div>' +
@@ -468,7 +492,8 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<p/> <div id="openScriptLiteralInjectionCallback"></div>' +
         'Expected result: open successfully in InAppBrowser with the text "Script literal successfully injected" and alert dialog with the text "Results verified".';
 
-    var open_hidden_tests = '<h1>Open Hidden </h1>' +
+    var open_hidden_tests =
+        '<h1>Open Hidden </h1>' +
         '<div id="openHidden"></div>' +
         'Expected result: no additional browser window. Alert appears with the text "background window loaded".' +
         '<p/> <div id="showHidden"></div>' +
@@ -480,13 +505,15 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<p/> <div id="openVisibleAndHide"></div>' +
         'Expected result: open successfully in InAppBrowser to https://www.google.co.uk. Hide after 2 seconds';
 
-    var clearing_cache_tests = '<h1>Clearing Cache</h1>' +
+    var clearing_cache_tests =
+        '<h1>Clearing Cache</h1>' +
         '<div id="openClearCache"></div>' +
         'Expected result: ?' +
         '<p/> <div id="openClearSessionCache"></div>' +
         'Expected result: ?';
 
-    var video_tag_tests = '<h1>Video tag</h1>' +
+    var video_tag_tests =
+        '<h1>Video tag</h1>' +
         '<div id="openRemoteVideo"></div>' +
         'Expected result: open successfully in InAppBrowser with an embedded video plays automatically on iOS and Android.' +
         '<div id="openRemoteNeedUserNoVideo"></div>' +
@@ -494,13 +521,15 @@ exports.defineManualTests = function (contentEl, createActionButton) {
         '<div id="openRemoteNeedUserYesVideo"></div>' +
         'Expected result: open successfully in InAppBrowser with an embedded video does not play automatically on iOS and Android but rather works after clicking the "play" button.';
 
-    var local_with_anchor_tag_tests = '<h1>Local with anchor tag</h1>' +
+    var local_with_anchor_tag_tests =
+        '<h1>Local with anchor tag</h1>' +
         '<div id="openAnchor1"></div>' +
         'Expected result: open successfully in InAppBrowser to the local page, scrolled to the top as normal.' +
         '<p/> <div id="openAnchor2"></div>' +
         'Expected result: open successfully in InAppBrowser to the local page, scrolled to the beginning of the tall div with border.';
 
-    var hardwareback_tests = '<h1>HardwareBack</h1>' +
+    var hardwareback_tests =
+        '<h1>HardwareBack</h1>' +
         '<p/> <div id="openHardwareBackDefault"></div>' +
         'Expected result: By default hardwareback is yes so pressing back button should navigate backwards in history then close InAppBrowser' +
         '<p/> <div id="openHardwareBackYes"></div>' +
@@ -514,12 +543,38 @@ exports.defineManualTests = function (contentEl, createActionButton) {
     // see http://msdn.microsoft.com/en-us/library/windows/apps/hh465380.aspx#differences for details
     if (window.MSApp && window.MSApp.execUnsafeLocalFunction) {
         MSApp.execUnsafeLocalFunction(function () {
-            contentEl.innerHTML = info_div + platform_info + local_tests + white_listed_tests + non_white_listed_tests + page_with_redirects_tests + pdf_url_tests + invalid_url_tests +
-                css_js_injection_tests + open_hidden_tests + clearing_cache_tests + video_tag_tests + local_with_anchor_tag_tests + hardwareback_tests;
+            contentEl.innerHTML =
+                info_div +
+                platform_info +
+                local_tests +
+                white_listed_tests +
+                non_white_listed_tests +
+                page_with_redirects_tests +
+                pdf_url_tests +
+                invalid_url_tests +
+                css_js_injection_tests +
+                open_hidden_tests +
+                clearing_cache_tests +
+                video_tag_tests +
+                local_with_anchor_tag_tests +
+                hardwareback_tests;
         });
     } else {
-        contentEl.innerHTML = info_div + platform_info + local_tests + white_listed_tests + non_white_listed_tests + page_with_redirects_tests + pdf_url_tests + invalid_url_tests +
-            css_js_injection_tests + open_hidden_tests + clearing_cache_tests + video_tag_tests + local_with_anchor_tag_tests + hardwareback_tests;
+        contentEl.innerHTML =
+            info_div +
+            platform_info +
+            local_tests +
+            white_listed_tests +
+            non_white_listed_tests +
+            page_with_redirects_tests +
+            pdf_url_tests +
+            invalid_url_tests +
+            css_js_injection_tests +
+            open_hidden_tests +
+            clearing_cache_tests +
+            video_tag_tests +
+            local_with_anchor_tag_tests +
+            hardwareback_tests;
     }
 
     document.getElementById('user-agent').textContent = navigator.userAgent;
@@ -534,206 +589,430 @@ exports.defineManualTests = function (contentEl, createActionButton) {
     var videohtml = basePath + 'video.html';
 
     // Local
-    createActionButton('target=Default', function () {
-        doOpen(localhtml);
-    }, 'openLocal');
-    createActionButton('target=Default (window.open)', function () {
-        doHookOpen(localhtml);
-    }, 'openLocalHook');
-    createActionButton('target=_self', function () {
-        doOpen(localhtml, '_self');
-    }, 'openLocalSelf');
-    createActionButton('target=_system', function () {
-        doOpen(localhtml, '_system');
-    }, 'openLocalSystem');
-    createActionButton('target=_blank', function () {
-        doOpen(localhtml, '_blank');
-    }, 'openLocalBlank');
-    createActionButton('target=Random, location=no, disallowoverscroll=yes', function () {
-        doOpen(localhtml, 'random_string', 'location=no, disallowoverscroll=yes');
-    }, 'openLocalRandomNoLocation');
-    createActionButton('target=Random, toolbarposition=bottom', function () {
-        doOpen(localhtml, 'random_string', 'toolbarposition=bottom');
-    }, 'openLocalRandomToolBarBottom');
-    createActionButton('target=Random, toolbarposition=top', function () {
-        doOpen(localhtml, 'random_string', 'toolbarposition=top');
-    }, 'openLocalRandomToolBarTop');
-    createActionButton('target=Random, toolbarposition=top, location=no', function () {
-        doOpen(localhtml, 'random_string', 'toolbarposition=top,location=no');
-    }, 'openLocalRandomToolBarTopNoLocation');
+    createActionButton(
+        'target=Default',
+        function () {
+            doOpen(localhtml);
+        },
+        'openLocal'
+    );
+    createActionButton(
+        'target=Default (window.open)',
+        function () {
+            doHookOpen(localhtml);
+        },
+        'openLocalHook'
+    );
+    createActionButton(
+        'target=_self',
+        function () {
+            doOpen(localhtml, '_self');
+        },
+        'openLocalSelf'
+    );
+    createActionButton(
+        'target=_system',
+        function () {
+            doOpen(localhtml, '_system');
+        },
+        'openLocalSystem'
+    );
+    createActionButton(
+        'target=_blank',
+        function () {
+            doOpen(localhtml, '_blank');
+        },
+        'openLocalBlank'
+    );
+    createActionButton(
+        'target=Random, location=no, disallowoverscroll=yes',
+        function () {
+            doOpen(localhtml, 'random_string', 'location=no, disallowoverscroll=yes');
+        },
+        'openLocalRandomNoLocation'
+    );
+    createActionButton(
+        'target=Random, toolbarposition=bottom',
+        function () {
+            doOpen(localhtml, 'random_string', 'toolbarposition=bottom');
+        },
+        'openLocalRandomToolBarBottom'
+    );
+    createActionButton(
+        'target=Random, toolbarposition=top',
+        function () {
+            doOpen(localhtml, 'random_string', 'toolbarposition=top');
+        },
+        'openLocalRandomToolBarTop'
+    );
+    createActionButton(
+        'target=Random, toolbarposition=top, location=no',
+        function () {
+            doOpen(localhtml, 'random_string', 'toolbarposition=top,location=no');
+        },
+        'openLocalRandomToolBarTopNoLocation'
+    );
 
     // White Listed
-    createActionButton('* target=Default', function () {
-        doOpen('http://cordova.apache.org');
-    }, 'openWhiteListed');
-    createActionButton('* target=Default (window.open)', function () {
-        doHookOpen('http://cordova.apache.org');
-    }, 'openWhiteListedHook');
-    createActionButton('* target=_self', function () {
-        doOpen('http://cordova.apache.org', '_self');
-    }, 'openWhiteListedSelf');
-    createActionButton('target=_system', function () {
-        doOpen('http://cordova.apache.org', '_system');
-    }, 'openWhiteListedSystem');
-    createActionButton('target=_blank', function () {
-        doOpen('http://cordova.apache.org', '_blank');
-    }, 'openWhiteListedBlank');
-    createActionButton('target=Random', function () {
-        doOpen('http://cordova.apache.org', 'random_string');
-    }, 'openWhiteListedRandom');
-    createActionButton('* target=Random, no location bar', function () {
-        doOpen('http://cordova.apache.org', 'random_string', 'location=no');
-    }, 'openWhiteListedRandomNoLocation');
+    createActionButton(
+        '* target=Default',
+        function () {
+            doOpen('http://cordova.apache.org');
+        },
+        'openWhiteListed'
+    );
+    createActionButton(
+        '* target=Default (window.open)',
+        function () {
+            doHookOpen('http://cordova.apache.org');
+        },
+        'openWhiteListedHook'
+    );
+    createActionButton(
+        '* target=_self',
+        function () {
+            doOpen('http://cordova.apache.org', '_self');
+        },
+        'openWhiteListedSelf'
+    );
+    createActionButton(
+        'target=_system',
+        function () {
+            doOpen('http://cordova.apache.org', '_system');
+        },
+        'openWhiteListedSystem'
+    );
+    createActionButton(
+        'target=_blank',
+        function () {
+            doOpen('http://cordova.apache.org', '_blank');
+        },
+        'openWhiteListedBlank'
+    );
+    createActionButton(
+        'target=Random',
+        function () {
+            doOpen('http://cordova.apache.org', 'random_string');
+        },
+        'openWhiteListedRandom'
+    );
+    createActionButton(
+        '* target=Random, no location bar',
+        function () {
+            doOpen('http://cordova.apache.org', 'random_string', 'location=no');
+        },
+        'openWhiteListedRandomNoLocation'
+    );
 
     // Non White Listed
-    createActionButton('target=Default', function () {
-        doOpen('http://www.apple.com');
-    }, 'openNonWhiteListed');
-    createActionButton('target=Default (window.open)', function () {
-        doHookOpen('http://www.apple.com');
-    }, 'openNonWhiteListedHook');
-    createActionButton('target=_self', function () {
-        doOpen('http://www.apple.com', '_self');
-    }, 'openNonWhiteListedSelf');
-    createActionButton('target=_system', function () {
-        doOpen('http://www.apple.com', '_system');
-    }, 'openNonWhiteListedSystem');
-    createActionButton('target=_blank', function () {
-        doOpen('http://www.apple.com', '_blank');
-    }, 'openNonWhiteListedBlank');
-    createActionButton('target=Random', function () {
-        doOpen('http://www.apple.com', 'random_string');
-    }, 'openNonWhiteListedRandom');
-    createActionButton('* target=Random, no location bar', function () {
-        doOpen('http://www.apple.com', 'random_string', 'location=no');
-    }, 'openNonWhiteListedRandomNoLocation');
+    createActionButton(
+        'target=Default',
+        function () {
+            doOpen('http://www.apple.com');
+        },
+        'openNonWhiteListed'
+    );
+    createActionButton(
+        'target=Default (window.open)',
+        function () {
+            doHookOpen('http://www.apple.com');
+        },
+        'openNonWhiteListedHook'
+    );
+    createActionButton(
+        'target=_self',
+        function () {
+            doOpen('http://www.apple.com', '_self');
+        },
+        'openNonWhiteListedSelf'
+    );
+    createActionButton(
+        'target=_system',
+        function () {
+            doOpen('http://www.apple.com', '_system');
+        },
+        'openNonWhiteListedSystem'
+    );
+    createActionButton(
+        'target=_blank',
+        function () {
+            doOpen('http://www.apple.com', '_blank');
+        },
+        'openNonWhiteListedBlank'
+    );
+    createActionButton(
+        'target=Random',
+        function () {
+            doOpen('http://www.apple.com', 'random_string');
+        },
+        'openNonWhiteListedRandom'
+    );
+    createActionButton(
+        '* target=Random, no location bar',
+        function () {
+            doOpen('http://www.apple.com', 'random_string', 'location=no');
+        },
+        'openNonWhiteListedRandomNoLocation'
+    );
 
     // Page with redirect
-    createActionButton('http://google.co.uk', function () {
-        doOpen('http://google.co.uk', 'random_string', '', 1);
-    }, 'openRedirect301');
-    createActionButton('http://goo.gl/pUFqg', function () {
-        doOpen('http://goo.gl/pUFqg', 'random_string', '', 2);
-    }, 'openRedirect302');
+    createActionButton(
+        'http://google.co.uk',
+        function () {
+            doOpen('http://google.co.uk', 'random_string', '', 1);
+        },
+        'openRedirect301'
+    );
+    createActionButton(
+        'http://goo.gl/pUFqg',
+        function () {
+            doOpen('http://goo.gl/pUFqg', 'random_string', '', 2);
+        },
+        'openRedirect302'
+    );
 
     // PDF URL
-    createActionButton('Remote URL', function () {
-        doOpen('http://www.stluciadance.com/prospectus_file/sample.pdf');
-    }, 'openPDF');
-    createActionButton('Local URL', function () {
-        doOpen(localpdf, '_blank');
-    }, 'openPDFBlank');
+    createActionButton(
+        'Remote URL',
+        function () {
+            doOpen('http://www.stluciadance.com/prospectus_file/sample.pdf');
+        },
+        'openPDF'
+    );
+    createActionButton(
+        'Local URL',
+        function () {
+            doOpen(localpdf, '_blank');
+        },
+        'openPDFBlank'
+    );
 
     // Invalid URL
-    createActionButton('Invalid Scheme', function () {
-        doOpen('x-ttp://www.invalid.com/', '_blank');
-    }, 'openInvalidScheme');
-    createActionButton('Invalid Host', function () {
-        doOpen('http://www.inv;alid.com/', '_blank');
-    }, 'openInvalidHost');
-    createActionButton('Missing Local File', function () {
-        doOpen('nonexistent.html', '_blank');
-    }, 'openInvalidMissing');
+    createActionButton(
+        'Invalid Scheme',
+        function () {
+            doOpen('x-ttp://www.invalid.com/', '_blank');
+        },
+        'openInvalidScheme'
+    );
+    createActionButton(
+        'Invalid Host',
+        function () {
+            doOpen('http://www.inv;alid.com/', '_blank');
+        },
+        'openInvalidHost'
+    );
+    createActionButton(
+        'Missing Local File',
+        function () {
+            doOpen('nonexistent.html', '_blank');
+        },
+        'openInvalidMissing'
+    );
 
     // CSS / JS injection
-    createActionButton('Original Document', function () {
-        doOpen(injecthtml, '_blank');
-    }, 'openOriginalDocument');
-    createActionButton('CSS File Injection', function () {
-        openWithStyle(injecthtml, injectcss);
-    }, 'openCSSInjection');
-    createActionButton('CSS File Injection (callback)', function () {
-        openWithStyle(injecthtml, injectcss, true);
-    }, 'openCSSInjectionCallback');
-    createActionButton('CSS Literal Injection', function () {
-        openWithStyle(injecthtml);
-    }, 'openCSSLiteralInjection');
-    createActionButton('CSS Literal Injection (callback)', function () {
-        openWithStyle(injecthtml, null, true);
-    }, 'openCSSLiteralInjectionCallback');
-    createActionButton('Script File Injection', function () {
-        openWithScript(injecthtml, injectjs);
-    }, 'openScriptInjection');
-    createActionButton('Script File Injection (callback)', function () {
-        openWithScript(injecthtml, injectjs, true);
-    }, 'openScriptInjectionCallback');
-    createActionButton('Script Literal Injection', function () {
-        openWithScript(injecthtml);
-    }, 'openScriptLiteralInjection');
-    createActionButton('Script Literal Injection (callback)', function () {
-        openWithScript(injecthtml, null, true);
-    }, 'openScriptLiteralInjectionCallback');
+    createActionButton(
+        'Original Document',
+        function () {
+            doOpen(injecthtml, '_blank');
+        },
+        'openOriginalDocument'
+    );
+    createActionButton(
+        'CSS File Injection',
+        function () {
+            openWithStyle(injecthtml, injectcss);
+        },
+        'openCSSInjection'
+    );
+    createActionButton(
+        'CSS File Injection (callback)',
+        function () {
+            openWithStyle(injecthtml, injectcss, true);
+        },
+        'openCSSInjectionCallback'
+    );
+    createActionButton(
+        'CSS Literal Injection',
+        function () {
+            openWithStyle(injecthtml);
+        },
+        'openCSSLiteralInjection'
+    );
+    createActionButton(
+        'CSS Literal Injection (callback)',
+        function () {
+            openWithStyle(injecthtml, null, true);
+        },
+        'openCSSLiteralInjectionCallback'
+    );
+    createActionButton(
+        'Script File Injection',
+        function () {
+            openWithScript(injecthtml, injectjs);
+        },
+        'openScriptInjection'
+    );
+    createActionButton(
+        'Script File Injection (callback)',
+        function () {
+            openWithScript(injecthtml, injectjs, true);
+        },
+        'openScriptInjectionCallback'
+    );
+    createActionButton(
+        'Script Literal Injection',
+        function () {
+            openWithScript(injecthtml);
+        },
+        'openScriptLiteralInjection'
+    );
+    createActionButton(
+        'Script Literal Injection (callback)',
+        function () {
+            openWithScript(injecthtml, null, true);
+        },
+        'openScriptLiteralInjectionCallback'
+    );
 
     // Open hidden
-    createActionButton('Create Hidden', function () {
-        openHidden('https://www.google.co.uk', true);
-    }, 'openHidden');
-    createActionButton('Show Hidden', function () {
-        showHidden();
-    }, 'showHidden');
-    createActionButton('Close Hidden', function () {
-        closeHidden();
-    }, 'closeHidden');
-    createActionButton('google.co.uk Not Hidden', function () {
-        openHidden('https://www.google.co.uk', false);
-    }, 'openHiddenShow');
-    createActionButton('google.co.uk shown for 2 seconds than hidden', function () {
-        var iab = doOpen('https://www.google.co.uk/', 'random_sting');
-        setTimeout(function () {
-            iab.hide();
-        }, 2000);
-    }, 'openVisibleAndHide');
+    createActionButton(
+        'Create Hidden',
+        function () {
+            openHidden('https://www.google.co.uk', true);
+        },
+        'openHidden'
+    );
+    createActionButton(
+        'Show Hidden',
+        function () {
+            showHidden();
+        },
+        'showHidden'
+    );
+    createActionButton(
+        'Close Hidden',
+        function () {
+            closeHidden();
+        },
+        'closeHidden'
+    );
+    createActionButton(
+        'google.co.uk Not Hidden',
+        function () {
+            openHidden('https://www.google.co.uk', false);
+        },
+        'openHiddenShow'
+    );
+    createActionButton(
+        'google.co.uk shown for 2 seconds than hidden',
+        function () {
+            var iab = doOpen('https://www.google.co.uk/', 'random_sting');
+            setTimeout(function () {
+                iab.hide();
+            }, 2000);
+        },
+        'openVisibleAndHide'
+    );
 
     // Clearing cache
-    createActionButton('Clear Browser Cache', function () {
-        doOpen('https://www.google.co.uk', '_blank', 'clearcache=yes');
-    }, 'openClearCache');
-    createActionButton('Clear Session Cache', function () {
-        doOpen('https://www.google.co.uk', '_blank', 'clearsessioncache=yes');
-    }, 'openClearSessionCache');
+    createActionButton(
+        'Clear Browser Cache',
+        function () {
+            doOpen('https://www.google.co.uk', '_blank', 'clearcache=yes');
+        },
+        'openClearCache'
+    );
+    createActionButton(
+        'Clear Session Cache',
+        function () {
+            doOpen('https://www.google.co.uk', '_blank', 'clearsessioncache=yes');
+        },
+        'openClearSessionCache'
+    );
 
     // Video tag
-    createActionButton('Remote Video', function () {
-        doOpen(videohtml, '_blank');
-    }, 'openRemoteVideo');
-    createActionButton('Remote Need User No Video', function () {
-        doOpen(videohtml, '_blank', 'mediaPlaybackRequiresUserAction=no');
-    }, 'openRemoteNeedUserNoVideo');
-    createActionButton('Remote Need User Yes Video', function () {
-        doOpen(videohtml, '_blank', 'mediaPlaybackRequiresUserAction=yes');
-    }, 'openRemoteNeedUserYesVideo');
+    createActionButton(
+        'Remote Video',
+        function () {
+            doOpen(videohtml, '_blank');
+        },
+        'openRemoteVideo'
+    );
+    createActionButton(
+        'Remote Need User No Video',
+        function () {
+            doOpen(videohtml, '_blank', 'mediaPlaybackRequiresUserAction=no');
+        },
+        'openRemoteNeedUserNoVideo'
+    );
+    createActionButton(
+        'Remote Need User Yes Video',
+        function () {
+            doOpen(videohtml, '_blank', 'mediaPlaybackRequiresUserAction=yes');
+        },
+        'openRemoteNeedUserYesVideo'
+    );
 
     // Local With Anchor Tag
-    createActionButton('Anchor1', function () {
-        doOpen(localhtml + '#bogusanchor', '_blank');
-    }, 'openAnchor1');
-    createActionButton('Anchor2', function () {
-        doOpen(localhtml + '#anchor2', '_blank');
-    }, 'openAnchor2');
+    createActionButton(
+        'Anchor1',
+        function () {
+            doOpen(localhtml + '#bogusanchor', '_blank');
+        },
+        'openAnchor1'
+    );
+    createActionButton(
+        'Anchor2',
+        function () {
+            doOpen(localhtml + '#anchor2', '_blank');
+        },
+        'openAnchor2'
+    );
 
     // Hardwareback
-    createActionButton('no hardwareback (defaults to yes)', function () {
-        doOpen('http://cordova.apache.org', '_blank');
-    }, 'openHardwareBackDefault');
-    createActionButton('hardwareback=yes', function () {
-        doOpen('http://cordova.apache.org', '_blank', 'hardwareback=yes');
-    }, 'openHardwareBackYes');
-    createActionButton('hardwareback=no', function () {
-        doOpen('http://cordova.apache.org', '_blank', 'hardwareback=no');
-    }, 'openHardwareBackNo');
-    createActionButton('no hardwareback -> hardwareback=no -> no hardwareback', function () {
-        var ref = cordova.InAppBrowser.open('https://google.com', '_blank', 'location=yes' + (platformOpts ? ',' + platformOpts : ''));
-        ref.addEventListener('loadstop', function () {
-            ref.close();
-        });
-        ref.addEventListener('exit', function () {
-            var ref2 = cordova.InAppBrowser.open('https://google.com', '_blank', 'location=yes,hardwareback=no' + (platformOpts ? ',' + platformOpts : ''));
-            ref2.addEventListener('loadstop', function () {
-                ref2.close();
+    createActionButton(
+        'no hardwareback (defaults to yes)',
+        function () {
+            doOpen('http://cordova.apache.org', '_blank');
+        },
+        'openHardwareBackDefault'
+    );
+    createActionButton(
+        'hardwareback=yes',
+        function () {
+            doOpen('http://cordova.apache.org', '_blank', 'hardwareback=yes');
+        },
+        'openHardwareBackYes'
+    );
+    createActionButton(
+        'hardwareback=no',
+        function () {
+            doOpen('http://cordova.apache.org', '_blank', 'hardwareback=no');
+        },
+        'openHardwareBackNo'
+    );
+    createActionButton(
+        'no hardwareback -> hardwareback=no -> no hardwareback',
+        function () {
+            var ref = cordova.InAppBrowser.open('https://google.com', '_blank', 'location=yes' + (platformOpts ? ',' + platformOpts : ''));
+            ref.addEventListener('loadstop', function () {
+                ref.close();
             });
-            ref2.addEventListener('exit', function () {
-                cordova.InAppBrowser.open('https://google.com', '_blank', 'location=yes' + (platformOpts ? ',' + platformOpts : ''));
+            ref.addEventListener('exit', function () {
+                var ref2 = cordova.InAppBrowser.open(
+                    'https://google.com',
+                    '_blank',
+                    'location=yes,hardwareback=no' + (platformOpts ? ',' + platformOpts : '')
+                );
+                ref2.addEventListener('loadstop', function () {
+                    ref2.close();
+                });
+                ref2.addEventListener('exit', function () {
+                    cordova.InAppBrowser.open('https://google.com', '_blank', 'location=yes' + (platformOpts ? ',' + platformOpts : ''));
+                });
             });
-        });
-    }, 'openHardwareBackDefaultAfterNo');
+        },
+        'openHardwareBackDefaultAfterNo'
+    );
 };
diff --git a/www/inappbrowser.js b/www/inappbrowser.js
index f93626c..3dcab21 100644
--- a/www/inappbrowser.js
+++ b/www/inappbrowser.js
@@ -17,7 +17,7 @@
  * specific language governing permissions and limitations
  * under the License.
  *
-*/
+ */
 
 (function () {
     var exec = require('cordova/exec');
@@ -27,19 +27,19 @@
 
     function InAppBrowser () {
         this.channels = {
-            'beforeload': channel.create('beforeload'),
-            'loadstart': channel.create('loadstart'),
-            'loadstop': channel.create('loadstop'),
-            'loaderror': channel.create('loaderror'),
-            'exit': channel.create('exit'),
-            'customscheme': channel.create('customscheme'),
-            'message': channel.create('message')
+            beforeload: channel.create('beforeload'),
+            loadstart: channel.create('loadstart'),
+            loadstop: channel.create('loadstop'),
+            loaderror: channel.create('loaderror'),
+            exit: channel.create('exit'),
+            customscheme: channel.create('customscheme'),
+            message: channel.create('message')
         };
     }
 
     InAppBrowser.prototype = {
         _eventHandler: function (event) {
-            if (event && (event.type in this.channels)) {
+            if (event && event.type in this.channels) {
                 if (event.type === 'beforeload') {
                     this.channels[event.type].fire(event, this._loadAfterBeforeload);
                 } else {


---------------------------------------------------------------------
To unsubscribe, e-mail: commits-unsubscribe@cordova.apache.org
For additional commands, e-mail: commits-help@cordova.apache.org