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 2012/11/06 00:11:35 UTC

webworks commit: [CB-1678] - made callbacks work

Updated Branches:
  refs/heads/bb10_ext_qnx e7d47bd99 -> 299544aeb


[CB-1678] - made callbacks work


Project: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/repo
Commit: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/commit/299544ae
Tree: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/tree/299544ae
Diff: http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/diff/299544ae

Branch: refs/heads/bb10_ext_qnx
Commit: 299544aeb92e96f7678e1f0ad882ec480042c65a
Parents: e7d47bd
Author: Tim Kim <ti...@nitobi.com>
Authored: Mon Nov 5 15:11:08 2012 -0800
Committer: Tim Kim <ti...@nitobi.com>
Committed: Mon Nov 5 15:11:08 2012 -0800

----------------------------------------------------------------------
 framework/ext-qnx/cordova/echo/js/client.js        |   27 +++++++++++++-
 framework/ext-qnx/cordova/echo/js/index.js         |   17 ++++++++--
 .../ext-qnx/cordova/echo/nto/arm/so.le-v7/echo.o   |  Bin 15288 -> 21520 bytes
 .../cordova/echo/nto/arm/so.le-v7/libecho.so       |  Bin 47613 -> 202686 bytes
 .../cordova/echo/nto/arm/so.le-v7/libechoS.a       |  Bin 107282 -> 483108 bytes
 framework/ext-qnx/cordova/echo/src/echo.cpp        |   10 ++++-
 6 files changed, 47 insertions(+), 7 deletions(-)
----------------------------------------------------------------------


http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/299544ae/framework/ext-qnx/cordova/echo/js/client.js
----------------------------------------------------------------------
diff --git a/framework/ext-qnx/cordova/echo/js/client.js b/framework/ext-qnx/cordova/echo/js/client.js
index b363956..91ebc2a 100644
--- a/framework/ext-qnx/cordova/echo/js/client.js
+++ b/framework/ext-qnx/cordova/echo/js/client.js
@@ -15,11 +15,34 @@
 */
  
 var _self = {},
-    _ID = require("./manifest.json").namespace;
+    _ID = require("./manifest.json").namespace,
+    win = null,
+    fail = null;
 
-_self.doEcho = function (args) {
+function handleCallback(result) {
+    if (result) {
+        if(win){
+            win(result);
+        }
+    } else {
+        if(fail){
+            fail(result);
+        }
+    }
+    win = null;
+    fail = null;
+}
+
+_self.doEcho = function (args, theWin, theFail) {
     var data = { "message" : args.message || "" };
+    
+    win = theWin;
+    fail = theFail;
+    
+    window.webworks.event.add(_ID, "echoCallback", handleCallback);
+    
     return window.webworks.execSync(_ID, "doEcho", data);
 };
 
+
 module.exports = _self;

http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/299544ae/framework/ext-qnx/cordova/echo/js/index.js
----------------------------------------------------------------------
diff --git a/framework/ext-qnx/cordova/echo/js/index.js b/framework/ext-qnx/cordova/echo/js/index.js
index 12b33e7..9e08271 100644
--- a/framework/ext-qnx/cordova/echo/js/index.js
+++ b/framework/ext-qnx/cordova/echo/js/index.js
@@ -14,9 +14,11 @@
  * limitations under the License.
  */
 var echoJNext,
-    _event = require("../../lib/event");
-
-module.exports = {
+    _event = require("../../lib/event"),
+    winCallback = null,
+    failCallback = null;
+    
+module.exports = {   
     doEcho: function (success, fail, args) {
         var invokeData = { "message" : JSON.parse(decodeURIComponent(args.message)) };
         try {
@@ -58,6 +60,15 @@ JNEXT.EchoJNext = function ()
     };
 
     _self.onEvent = function (strData) {
+        var arData = strData.split(" "),
+            strEventId = arData[0],
+            args = arData[1],
+            info = {};
+            
+        if (strEventId === "cordova.echo.callback") {
+            _event.trigger("echoCallback", args);
+        }
+                  
     };
     
     _self._id = "";

http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/299544ae/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/echo.o
----------------------------------------------------------------------
diff --git a/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/echo.o b/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/echo.o
index e179b43..fe3d6a4 100644
Binary files a/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/echo.o and b/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/echo.o differ

http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/299544ae/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libecho.so
----------------------------------------------------------------------
diff --git a/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libecho.so b/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libecho.so
index cd2d647..cfaec68 100755
Binary files a/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libecho.so and b/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libecho.so differ

http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/299544ae/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libechoS.a
----------------------------------------------------------------------
diff --git a/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libechoS.a b/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libechoS.a
index 64f0861..31ca5d0 100644
Binary files a/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libechoS.a and b/framework/ext-qnx/cordova/echo/nto/arm/so.le-v7/libechoS.a differ

http://git-wip-us.apache.org/repos/asf/incubator-cordova-blackberry-webworks/blob/299544ae/framework/ext-qnx/cordova/echo/src/echo.cpp
----------------------------------------------------------------------
diff --git a/framework/ext-qnx/cordova/echo/src/echo.cpp b/framework/ext-qnx/cordova/echo/src/echo.cpp
index 095bc48..a6d0dac 100644
--- a/framework/ext-qnx/cordova/echo/src/echo.cpp
+++ b/framework/ext-qnx/cordova/echo/src/echo.cpp
@@ -97,7 +97,7 @@ string Echo::InvokeMethod(const string& command) {
              return doEcho("Nothing to echo.");
         }
     }else{
-        return "Unsupported Method";
+        return doEcho("Unsupported Method");
     }
 }
 
@@ -105,5 +105,11 @@ string Echo::InvokeMethod(const string& command) {
  * Method that sends off Event message
  */
 string Echo::doEcho(const std::string& message) {
-    return message;
+    std::string eventString = m_id;
+    eventString.append(" ");
+    eventString.append("cordova.echo.callback");
+    eventString.append(" ");
+    eventString.append(message);
+    SendPluginEvent(eventString.c_str(), m_pContext);
+    return eventString;
 }