diff --git a/framework/src/org/apache/cordova/AndroidWebView.java b/framework/src/org/apache/cordova/AndroidWebView.java index 49ec7823..4074d216 100755 --- a/framework/src/org/apache/cordova/AndroidWebView.java +++ b/framework/src/org/apache/cordova/AndroidWebView.java @@ -1024,14 +1024,10 @@ public class AndroidWebView extends WebView implements CordovaWebView { return this.pluginManager.onOverrideUrlLoading(url); } - @Override - public void resetJsMessageQueue() { - this.jsMessageQueue.reset(); - } - - @Override - public void onReset() { - this.pluginManager.onReset(); + void onPageReset() { + boundKeyCodes.clear(); + pluginManager.onReset(); + jsMessageQueue.reset(); } @Override diff --git a/framework/src/org/apache/cordova/AndroidWebViewClient.java b/framework/src/org/apache/cordova/AndroidWebViewClient.java index 044b2c4a..b57e0b66 100755 --- a/framework/src/org/apache/cordova/AndroidWebViewClient.java +++ b/framework/src/org/apache/cordova/AndroidWebViewClient.java @@ -280,14 +280,11 @@ public class AndroidWebViewClient extends WebViewClient implements CordovaWebVie super.onPageStarted(view, url, favicon); isCurrentlyLoading = true; LOG.d(TAG, "onPageStarted(" + url + ")"); - // Flush stale messages. - this.appView.resetJsMessageQueue(); + // Flush stale messages & reset plugins. + this.appView.onPageReset(); // Broadcast message that page has loaded this.appView.postMessage("onPageStarted", url); - - // Notify all plugins of the navigation, so they can clean up if necessary. - this.appView.onReset(); } /** diff --git a/framework/src/org/apache/cordova/CordovaWebView.java b/framework/src/org/apache/cordova/CordovaWebView.java index 6a9fbaf3..5329ce25 100644 --- a/framework/src/org/apache/cordova/CordovaWebView.java +++ b/framework/src/org/apache/cordova/CordovaWebView.java @@ -122,10 +122,6 @@ public interface CordovaWebView { boolean onOverrideUrlLoading(String url); - void resetJsMessageQueue(); - - void onReset(); - int getVisibility(); void incUrlTimeout();