This resolves the problem where pluginManager was not available as a
field on a generic CordovaWebView, which broke backwards-compatibility
with existing plugins (including core Cordova plugins).
This also necessitates splitting AndroidWebView into two classes, so
that it now *has* a WebView, rather than *is* a WebView, due to Java's
lack of multiple inheritance. All WebView-defined methods are now
implemented on the AndroidWebViewImpl class, and are delegated from the
AndroidWebView class as necessary.
Reinstate fix for github issue #96 (b715d20)
Re-remove extra calls to set up client objects (8e31ef7b)
Reinstate license header in CordovaChromeClient.java
This should add the old setProperty methods required for the tests. We
decided to not deprecate them. I don't make a habit of doing merge
commits, due to their destructive nature, but I think I might have
merged too much stuff in.
Merge branch 'pluggable_webview' of https://git-wip-us.apache.org/repos/asf/cordova-android into pluggable_webview
Conflicts:
framework/src/org/apache/cordova/AndroidChromeClient.java
framework/src/org/apache/cordova/AndroidWebView.java
framework/src/org/apache/cordova/CordovaActivity.java
framework/src/org/apache/cordova/CordovaWebView.java
It changes the webview preference naming from full name to prefix, since the
prefix is also used to construct the name of WebView, WebViewClient and
ChromeClient.
For example, for Crosswalk webview, config.xml contains:
<preference name="webView" value="org.apache.cordova.engine.crosswalk.XWalkCordova" />
AlertDialog.Builder.show() will create an AlertDialog before it show. This is the source code snippet:
/**
* Creates a {@link AlertDialog} with the arguments supplied to this builder and
* {@link Dialog#show()}'s the dialog.
*/
public AlertDialog show() {
AlertDialog dialog = create();
dialog.show();
return dialog;
}
github: close#96
When a plugin throws an unchecked exception, we're not catching it
anywhere and so the error callback is not being called.
This change adds a try/catch to catch such exceptions.
When a plugin throws an unchecked exception, we're not catching it
anywhere and so the error callback is not being called.
This change adds a try/catch to catch such exceptions.