Serge Huijben
500ccd8e80
CB-8764 Store serviceName instead of class ( close #169 )
2015-03-27 10:15:48 -04:00
Serge Huijben
7cf7311a9d
CB-8764 Save instanceState before calling super
2015-03-27 10:15:41 -04:00
Andrew Grieve
0669edddae
Notify plugins of pause/resume before queing JS event (no-op)
...
This is actually already the order things happen in since JS events are async. Might as well be clearer about it.
2015-03-25 22:07:50 -04:00
Jason Chase
38a8d7742e
CB-8715 Update comments to match whitelist code ( close #166 )
2015-03-25 09:34:13 -04:00
Tim Lancina
32e84d2316
CB-7085 Add onConfigurationChanged hook for plugins ( close #165 )
2015-03-24 13:36:25 -04:00
Andrew Grieve
8d5cb00bec
CB-8702 Add API for plugins to override shouldInterceptRequest
with a stream
2015-03-18 11:02:27 -04:00
Andrew Grieve
15530a4820
Add CordovaPlugin.getServiceName()
2015-03-18 10:47:23 -04:00
Andrew Grieve
f6e56b345d
CB-8699 Fix CordovaResourceApi copyResource creating zero-length files when src=uncompressed asset
2015-03-17 21:36:11 -04:00
Andrew Grieve
56d61eb44f
Delete a couple of unreferenced .java files
2015-03-17 11:58:19 -04:00
Andrew Grieve
2103da7b9d
CB-8693 Delete framework/res
and framework/assets
...
They were being merged into apps unwantingly.
2015-03-17 11:56:02 -04:00
Andrew Grieve
679069729c
CB-7747 When both allow-navigation and allow-external are set, navigate instead of opening external
...
Also: Move shouldOverrideUrlLoading logic into CordovaWebViewEngine.Client
2015-03-13 11:32:54 -04:00
Andrew Grieve
f764448ccc
Tweak PluginManager.setPluginEntries()
to create startup plugins when called post init()
2015-03-12 16:33:55 -04:00
Andrew Grieve
917d0dfc49
XmlPullParserFactory -> XmlPullParser in ConfigXmlParser
...
This allows clients to parse non-resourse XML
2015-03-06 16:16:06 -05:00
Andrew Grieve
316cf057f3
Update project template with new whitelist defaults
2015-03-05 22:31:48 -05:00
Andrew Grieve
55be212594
CB-7747 Update default network whitelist to allow for ChromVox scripts
2015-03-05 21:38:21 -05:00
Andrew Grieve
489e63f8e7
CB-8608 Add blob:
to default shouldAllowRequest policy
2015-03-04 11:09:38 -05:00
Andrew Grieve
62c081dc85
CB-8592 Fix NPE if lifecycle events reach CordovaWebView before init()
has been called
2015-03-03 09:51:39 -05:00
Andrew Grieve
023ad9ddf8
CB-8510 Enforce that CordovaWebViewImpl is instantiated with an Engine
...
No reason to not enforce this.
2015-03-03 09:51:03 -05:00
Andrew Grieve
eccf486162
Add about:blank and data: to default shouldAllowNavigation()
2015-03-02 21:40:28 -05:00
Andrew Grieve
a6da46a00e
CB-8510 Remove shouldOverrideUrlLoading
from CordovaWebViewEngine.Client
.
...
It's logic that's pretty webview-specific, so it doesn't make sense to
share.
2015-03-02 21:04:21 -05:00
Andrew Grieve
747d2c97cd
CB-8588 Add CATEGORY_BROWSABLE to intents from showWebPage openExternal=true
2015-03-02 21:04:20 -05:00
Andrew Grieve
af2969dec5
CB-8587 Don't allow webview navigations within showWebPage that are not whitelisted
2015-03-02 21:04:20 -05:00
Andrew Grieve
53dba8678c
Delete no longer relevant comments about <url-filter>
2015-03-02 20:43:10 -05:00
Andrew Grieve
afdac9b413
Split out shouldAllowBridgeAccess
from shouldAllowNavigation
...
This will allow a plugin to be created that allows iframes to be
navigated to, but disallow them from accessing the bridge.
Note: This isn't a configuration that we're planning on supporting with
the default whitelist plugin, but still does make sense to enable for
the experts in the room
2015-03-02 20:40:08 -05:00
Andrew Grieve
1ad280db98
Add an isSecretEstablished()
getter to CordovaBridge
...
Not being used, but might be of use to an Engine plugin or a Whitelist
plugin.
2015-03-02 20:37:33 -05:00
Andrew Grieve
035c3ad319
Simplify default navigation policy to allow navigations within /app_webview/
...
It's really on XHRs to it that are an issue.
2015-02-27 15:46:17 -05:00
Andrew Grieve
c237a1c0d2
Log a warning when a navigation is blocked by the whitelist
2015-02-27 15:45:37 -05:00
Andrew Grieve
f1d093548e
Make ConfigXmlParser take a Context rather than Activity
2015-02-27 15:45:16 -05:00
Andrew Grieve
3950818030
CB-8545 Don't add a layout as a parent of the WebView
...
Sanity checked mobilespec with --thirdpartyplugins that this doesn't
break any of them.
2015-02-25 12:27:48 -05:00
Andrew Grieve
d6da2ef096
CB-8510 Fix back button not exiting activity in manual tests
2015-02-25 12:27:06 -05:00
Andrew Grieve
455298d736
CB-8510 CB-7159 Fix background color manual test page not showing flash of green
2015-02-25 12:26:11 -05:00
Andrew Grieve
d99856c52b
CB-8510 Move requestFocusFromTouch into createViews from init()
...
Makes more sense there since it's view-creation-related
2015-02-25 12:14:39 -05:00
Andrew Grieve
087ec11e6a
CB-8510 Create a new abstraction for sharing common logic of WebView engines
...
Having CordovaWebViewImpl separate from CordovaWebViewEngine is helpful because
now each webview doesn't have to re-implement non-webview-specific
featrues. e.g.:
1. load timeout
2. keyboard events
3. showCustomView
4. lifecycle events
Moved AndroidWebView into its own package to ensure that it doesn't use
any package-private symbols (since plugins cannot use them).
2015-02-19 12:21:30 -05:00
Andrew Grieve
8106981bb6
Extract alert, confirm, prompt Dialog logic into a helper for use by other engines
2015-02-19 10:43:25 -05:00
Andrew Grieve
de4d7cd10d
Deprecate custom view methods in CordovaWebView.
...
They are just helper methods that plugins should just be implementing
for themselves.
2015-02-19 10:33:06 -05:00
Andrew Grieve
804dcac12f
Address TODO: Move requestFocusFromTouch() to CordovaActivity rather than AndroidWebView
2015-02-19 10:32:29 -05:00
Andrew Grieve
fb0987b824
Delete some dead code. Add a license header.
2015-02-19 10:31:44 -05:00
Andrew Grieve
88f50a66ff
Make showWebPage() take a Map instead of a HashMap
2015-02-19 10:30:26 -05:00
Andrew Grieve
7be600d8e9
Make cookieManager a field in AndroidCookieManager rather than using getInstance() every time
2015-02-19 10:28:18 -05:00
Andrew Grieve
11d6b8029f
Remove explicit whitelisting of content: in CordovaBridge
...
It was redundant since we now check if the URL should be allowed to
be navigated to.
2015-02-19 10:06:36 -05:00
Andrew Grieve
f1d4c01190
Merge IceCreamCordovaWebViewClient into AndroidWebViewClient.
...
There was no reason to have it separate.
2015-02-19 10:03:50 -05:00
Andrew Grieve
c12d93e77f
Move newly added should* methods of CordovaUriHelper into PluginManager
...
Doing this so that clients won't mistakenly call the wrong one.
2015-02-19 10:00:56 -05:00
Ian Clelland
a8bec4ec9c
Remove redundant whitelist checks
2015-02-11 16:19:54 -05:00
Ian Clelland
0c3254fd48
Remove whitelist config.xml parsing
2015-02-11 14:01:11 -05:00
Ian Clelland
0faf2f0461
Remove whitelists from WebView classes
2015-02-11 14:01:11 -05:00
Ian Clelland
dd6e42aacc
Remove unused Config methods (Breaking Change)
2015-02-11 14:01:11 -05:00
Ian Clelland
18e5e9dcc5
Refactor ConfigXmlParser to allow subclasses
2015-02-11 14:01:11 -05:00
Ian Clelland
c8f44ab460
Use /app_webview/ rather than app_webview to filter bad requests
2015-02-11 14:01:11 -05:00
Ian Clelland
ac1f9c790a
Defer whitelist decisions to plugins
...
There is a default policy, which is implemented in the case where no plugins override any of the whitelist methods:
* Error URLs must start with file://
* Navigation is allowed to file:// and data: URLs which do not contain "app_webview"
* External URLs do not launch intents
* XHRs are allowed to file:// and data: URLs which do not contain "app_webview"
2015-02-11 14:01:11 -05:00
Ian Clelland
7533996fac
Add hooks in CordovaPlugin and PluginManager for whitelist plugins
...
This adds three hooks to CordovaPlugin objects. In each case, a null
value can be returned to indicate "I don't care". This null value is
the default.
public Boolean shouldAllowRequest(String url)
public Boolean shouldAllowNavigation(String url)
public Boolean shouldOpenExternalUrl(String url)
2015-02-11 10:03:34 -05:00