From e5bbbbe35cbbb8c432fa91994e2be6b6a66b43cb Mon Sep 17 00:00:00 2001 From: Bryce Curtis Date: Thu, 19 Aug 2010 15:41:06 -0500 Subject: [PATCH] Add onpause & onresume events to javascript. --- framework/assets/js/phonegap.js.base | 5 +++++ framework/src/com/phonegap/DroidGap.java | 11 ++++++++--- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/framework/assets/js/phonegap.js.base b/framework/assets/js/phonegap.js.base index a574e8d7..6be5b591 100755 --- a/framework/assets/js/phonegap.js.base +++ b/framework/assets/js/phonegap.js.base @@ -74,6 +74,11 @@ PhoneGap.addConstructor = function(func) { var e = document.createEvent('Events'); e.initEvent('deviceready'); document.dispatchEvent(e); + + // Fire the onresume event, since first one happens before we are inited + var e = document.createEvent('Events'); + e.initEvent('onresume'); + document.dispatchEvent(e); } }, 5); })(); diff --git a/framework/src/com/phonegap/DroidGap.java b/framework/src/com/phonegap/DroidGap.java index 5bc051c9..b9e7928d 100755 --- a/framework/src/com/phonegap/DroidGap.java +++ b/framework/src/com/phonegap/DroidGap.java @@ -146,8 +146,8 @@ public class DroidGap extends Activity { * @param Configuration newConfig */ public void onConfigurationChanged(Configuration newConfig) { - //don't reload the current page when the orientation is changed - super.onConfigurationChanged(newConfig); + //don't reload the current page when the orientation is changed + super.onConfigurationChanged(newConfig); } @Override @@ -156,6 +156,9 @@ public class DroidGap extends Activity { */ protected void onPause(){ super.onPause(); + + // Send pause event to JavaScript + appView.loadUrl("javascript:var e = document.createEvent('Events'); e.initEvent('onpause'); document.dispatchEvent(e);"); // Pause JavaScript timers (including setInterval) appView.pauseTimers(); @@ -167,6 +170,9 @@ public class DroidGap extends Activity { */ protected void onResume(){ super.onResume(); + + // Send resume event to JavaScript + appView.loadUrl("javascript:var e = document.createEvent('Events'); e.initEvent('onresume'); document.dispatchEvent(e);"); // Resume JavaScript timers (including setInterval) appView.resumeTimers(); @@ -263,7 +269,6 @@ public class DroidGap extends Activity { * @param message */ public void sendJavascript(String statement) { - System.out.println("DroidGap.sendResponse("+statement+")"); this.callbackServer.sendJavascript(statement); }