Add onpause & onresume events to javascript.

This commit is contained in:
Bryce Curtis 2010-08-19 15:41:06 -05:00
parent b4d3a10773
commit e5bbbbe35c
2 changed files with 13 additions and 3 deletions

View File

@ -74,6 +74,11 @@ PhoneGap.addConstructor = function(func) {
var e = document.createEvent('Events'); var e = document.createEvent('Events');
e.initEvent('deviceready'); e.initEvent('deviceready');
document.dispatchEvent(e); 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); }, 5);
})(); })();

View File

@ -157,6 +157,9 @@ public class DroidGap extends Activity {
protected void onPause(){ protected void onPause(){
super.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) // Pause JavaScript timers (including setInterval)
appView.pauseTimers(); appView.pauseTimers();
} }
@ -168,6 +171,9 @@ public class DroidGap extends Activity {
protected void onResume(){ protected void onResume(){
super.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) // Resume JavaScript timers (including setInterval)
appView.resumeTimers(); appView.resumeTimers();
} }
@ -263,7 +269,6 @@ public class DroidGap extends Activity {
* @param message * @param message
*/ */
public void sendJavascript(String statement) { public void sendJavascript(String statement) {
System.out.println("DroidGap.sendResponse("+statement+")");
this.callbackServer.sendJavascript(statement); this.callbackServer.sendJavascript(statement);
} }