You are viewing a plain text version of this content. The canonical link for it is here.
Posted to commits@cordova.apache.org by gt...@apache.org on 2013/01/10 22:22:08 UTC

js commit: Support closing of InAppBrowser on BlackBerry 10

Updated Branches:
  refs/heads/master 790e28572 -> 9d1676804


Support closing of InAppBrowser on BlackBerry 10


Project: http://git-wip-us.apache.org/repos/asf/cordova-js/repo
Commit: http://git-wip-us.apache.org/repos/asf/cordova-js/commit/9d167680
Tree: http://git-wip-us.apache.org/repos/asf/cordova-js/tree/9d167680
Diff: http://git-wip-us.apache.org/repos/asf/cordova-js/diff/9d167680

Branch: refs/heads/master
Commit: 9d1676804725b71d32c7c206de39a34964aba306
Parents: 790e285
Author: Gord Tanner <gt...@gmail.com>
Authored: Thu Jan 10 16:21:43 2013 -0500
Committer: Gord Tanner <gt...@gmail.com>
Committed: Thu Jan 10 16:21:43 2013 -0500

----------------------------------------------------------------------
 lib/blackberry/plugin/qnx/InAppBrowser.js |   18 +++++++++++++-----
 1 files changed, 13 insertions(+), 5 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/cordova-js/blob/9d167680/lib/blackberry/plugin/qnx/InAppBrowser.js
----------------------------------------------------------------------
diff --git a/lib/blackberry/plugin/qnx/InAppBrowser.js b/lib/blackberry/plugin/qnx/InAppBrowser.js
index 0280fe0..f6d4b24 100644
--- a/lib/blackberry/plugin/qnx/InAppBrowser.js
+++ b/lib/blackberry/plugin/qnx/InAppBrowser.js
@@ -20,19 +20,23 @@
 */
 
 var cordova = require('cordova'),
-    core = require('cordova/plugin/InAppBrowser');
+    core = require('cordova/plugin/InAppBrowser'),
+    browser = {
+        close: function () { } //dummy so we don't have to check for undefined
+    };
 
 var navigate = {
     "_blank": function (url, whitelisted) {
-        core._orig.apply(null, [url, "_blank"]);
+        return core._orig.apply(null, [url, "_blank"]);
     },
 
     "_self": function (url, whitelisted) {
         if (whitelisted) {
             window.location.href = url;
+            return window;
         }
         else {
-            core._orig.apply(null, [url, "_blank"]);
+            return core._orig.apply(null, [url, "_blank"]);
         }
     },
 
@@ -41,10 +45,13 @@ var navigate = {
             target: "sys.browser",
             uri: url
         }, function () {}, function () {});
+
+        return {
+            close: function () { }
+        };
     }
 };
 
-
 module.exports = {
     open: function (args, win, fail) {
         var url = args[0],
@@ -66,12 +73,13 @@ module.exports = {
         }
 
         webworks.exec(function (whitelisted) {
-            navigate[target](url, whitelisted);
+            browser = navigate[target](url, whitelisted);
         }, fail, "org.apache.cordova", "isWhitelisted", [url], true);
 
         return { "status" : cordova.callbackStatus.NO_RESULT, "message" : "" };
     },
     close: function (args, win, fail) {
+        browser.close();
         return { "status" : cordova.callbackStatus.OK, "message" : "" };
     }
 };