Commit Graph

3522 Commits

Author SHA1 Message Date
Nate Fischer
bc1da9e2b4 WebView: fix SafeBrowsingResponse javadocs
Docs change only.

This fixes javadoc errors in SafeBrowsingResponse.java:

 * Typo: capital "B" in "onSafeBrowsingHit"
 * Add full package names
 * Add parameter lists to all linked methods

Bug: 64077668
Test: make update-api and check javadocs manually
Change-Id: I5e7b0e59ba865619b252f7e9e431ffac6e1bab1f
2017-08-08 15:43:44 -07:00
Nate Fischer
2ddac82335 Merge "WebView: update SafeBrowsing documentation" into oc-mr1-dev 2017-08-08 21:00:59 +00:00
Jeff Sharkey
67f9d5070a Fix broken javadocs.
Bug: 64337634
Test: make -j32 doc-comment-check-docs
Change-Id: I20fdd3dcddef09111d35946c41c596c7689effa6
2017-08-06 07:37:08 -06:00
Selim Gurun
a30ec5ff4c Merge "Update documentation for Whitelist API" into oc-mr1-dev 2017-07-31 14:27:52 +00:00
Selim Gurun
89e935904a Update documentation for Whitelist API
Bug: 64144913
Test: compile documentation and visually confirm

Change-Id: Ia19ca9b6cf4f8a0802835d597a30e10c498dbd81
2017-07-28 12:06:42 -07:00
Nate Fischer
471891df02 WebView: update SafeBrowsing documentation
No change in logic, only docs changes:

 * Docs about Safe Browsing feature as a whole.
 * Expand the docs for initSafeBrowsing/shutdownSafeBrowsing

Bug: 63660204
Bug: 62192626
Test: make update-api and manually check javadocs
Change-Id: I6526a0f1ce1327f6eff416c27ded89866587f173
2017-07-27 21:43:59 +00:00
Tima Vaisburd
e8c611f04d Unhide get/setTextClassifier in WebView
We can unhide the methods etTextClassifier and getTextClassifier since
the WebView M61 that is shipping with O-MR1 has the corresponding
implementation.

Bug: 63903071
Test: CTS test in a ceparate CL
Change-Id: I72df0d34a0fccd2c213ed10ca8993a7d786ff835
2017-07-20 16:05:26 -07:00
Nate Fischer
c5ec745135 WebView: remove @Nullable from SB whitelist
This removes the @Nullable annotation from
WebView#setSafeBrowsingWhitelist's List parameter. This does not need to
be Nullable, since the whitelist can be unset just as easily by passing
an empty list.

Bug: 63084528
Test: N/A
Change-Id: Ica9d67bc907b16e89d0a1b6a15d91e21f74cc4c9
2017-07-18 16:32:19 -07:00
TreeHugger Robot
8e82f01280 Merge "WebView: change setSafeBrowsingWhiteList signature" 2017-07-18 00:54:41 +00:00
Nate Fischer
d6385d326b WebView: change setSafeBrowsingWhiteList signature
* Renames WhiteList -> Whitelist
 * Adds a callback to indicate malformed URLs to the application

Bug: 63660204
Bug: 63084528
Bug: 63765158
Test: N/A
Change-Id: Ia12f0822c5d3a339633a820c40bdbff4137f510b
2017-07-17 23:32:22 +00:00
Nate Fischer
5ab00b31ee WebView: add IntDef for SafeBrowsingThreat
This adds an @IntDef for WebViewClient#onSafeBrowsingHit()'s threatType
argument.

Bug: 62723291, 63655766
Test: N/A
Change-Id: I71fb51753c461d1efa9de123bde977721c8da515
2017-07-13 15:28:21 -07:00
TreeHugger Robot
953daa0a78 Merge "WebView: update docs for WebView#initSafeBrowsing" 2017-07-13 06:35:00 +00:00
Nate Fischer
465104817d Merge "WebView: Fix SafeBrowsingResponse API" 2017-07-13 05:17:39 +00:00
Nate Fischer
3ca196a12d WebView: update docs for WebView#initSafeBrowsing
This fixes the documentation to specify that an application Context will
be used instead of an Activity Context (since only application Context
is needed).

Bug: 62192626, 63616213
Test: N/A
Change-Id: Ia34d2172be8cca7cb0751286c6c2388ff34d3f4a
2017-07-12 18:46:50 -07:00
Nate Fischer
520a8ba279 WebView: fix WebView#setSafeBrowsingWhiteList
This corrects the WebView#setSafeBrowsingWhiteList method to accept a
List<String> instead of a String[], as per API council recommendation.

Bug: 63084528, 63615148
Test: N/A
Change-Id: I53f490c6ab9c10fffe6c89010d7509747ac8f95f
2017-07-12 17:37:07 -07:00
Nate Fischer
6aabdc4dbc WebView: Fix SafeBrowsingResponse API
The methods were previously package-private by mistake. This fixes them
to be public.

Bug: 63615582, 62723291
Test: N/A
Change-Id: Ie9095f861213a70fd655561f911385bdd06632b3
2017-07-12 17:20:55 -07:00
Nate Fischer
2f7af06efb Add SafeBrowsingResponse abstract class
This adds a new class called SafeBrowsingResponse to replace the
ValueCallback parameter for WebViewClient#onSafeBrowsingHit. This
class contains specific methods for each of the available actions.

This also removes the SAFE_BROWSING_ACTION_* constants from the
WebViewClient class.

Bug: 62723291
Test: N/A
Change-Id: Ie4fe878ea470f7aea7a716ae9edb80b53b73e172
2017-07-11 20:32:04 +00:00
Nate Fischer
bf158ec3d8 WebView: add APIs for setSafeBrowsingWhiteList
This adds the APIs for the static method
WebView#setSafeBrowsingWhiteList().

BUG: 63084528
Test: N/A
Change-Id: I6eff32d9f8356e8c1a2c631782e07d52ba9b6ad5
2017-06-27 23:25:15 -07:00
Gustav Sennton
beec08679b Use classloader namespace instead of lib paths to load WebView libs.
When loading WebView's native libraries we now have a classloader
pointing to the namespace of thise libraries - so we no longer need to
explicitly reference those libraries by their path names.

Bug: 62860565
Test: Start a WebView-using app. Ensure that libwebviewchromium.so is
loaded into the app process.

Change-Id: I205131f4b5fac7c33374560515b85ddef19a7ce9
2017-06-26 16:05:33 +01:00
Gustav Sennton
ed98a15636 Move WebView relro related functionality to its own file.
WebViewFactory contains a mix of functionality related to preparing and
loading WebView.
This CL breaks out the functionality related to relro-creation and
native library loading into its own class/file to make WebViewFactory
easier to interpret.

Some variables/methods must stay in WebViewFactory since they are
SystemApis.

Bug: 28736099
Test: start WebView-using app, ensure libwebviewchromium64.relro is
loaded into the app process.

Change-Id: I956e1536f23d47f1de1b6c23fc6abeb2768b58ae
2017-06-20 17:25:53 +01:00
Nate Fischer
0c3043622e Add WebViewClient#onSafeBrowsingHit() API
This adds the WebViewClient#onSafeBrowsingHit() API and its default
implementation.

This also adds the relevant constants. This includes
SAFE_BROWSING_THREAT_UNKNOWN, in case we expose new threat types in the
future.

Bug: 62723291
Test: N/A
Change-Id: I0b424a952466b23db4cf296573680a0a6c61b981
2017-06-16 16:53:44 -07:00
Jeff Sharkey
9039636535 Revert "Hide APIs not intended to ship in DR."
This reverts commit 0c28d43fe1.
2017-06-12 16:26:53 -06:00
Jeff Sharkey
0c28d43fe1 Hide APIs not intended to ship in DR.
This CL will be reverted once it merges into the next release branch
to re-introduce the proposed APIs.

This CL also makes the following code changes to preserve API
compatibility:

-- It keeps the recently added RemoteViews.clone() synchronized logic
intact, but moves it inside the method to avoid changing the API
signature.

-- It reverts the RttCall.read() behavior to the oc-dev logic, since
we can't throw IOException until we get an API level bump.  (The
original logic returned null instead of throwing.)

Test: builds, boots
Bug: 62427252, 62431886, 62427329
Bug: 62468911, 62431162, 62428935, 62429096
Bug: 37290820, 37359238, 36886243
Bug: 30143923, 35761231, 62192626, 29829689
Change-Id: I83d723f598cb0ee1fe198e65debd86ef7fd0420c
2017-06-12 10:26:01 -06:00
TreeHugger Robot
fb95cd11d7 Merge "Update documentation for postmessage method" 2017-06-02 02:49:05 +00:00
Nate Fischer
b4ec958c7c Merge "Add WebView#{init,shutdown}SafeBrowsing APIs" 2017-05-31 00:17:48 +00:00
Nate Fischer
0e72c181c8 Add WebView#{init,shutdown}SafeBrowsing APIs
This adds the APIs for the WebView#initSafeBrowsing and
WebView#shutdownSafeBrowsing static methods.

Implementation for these APIs landed in 60.0.3112.0

Also, this fixes an already-existing error with import order (failed
Checkstyle hook). No actual change to imports.

BUG: 62192626
Test: manual - built a custom app which calls methods via reflection
Change-Id: I763349182443dc20cff1e7f08475290fac65c233
2017-05-30 11:40:26 -07:00
Felipe Leme
0295914784 Merge "Moar Autofill Framework javadoc improvements:" into oc-dev am: 7990306b8b
am: fa2d7ffb95

Change-Id: I4734f1b5abbdf907692006355c2a60d13549819b
2017-05-26 19:12:33 +00:00
Felipe Leme
6dcec87ea2 Moar Autofill Framework javadoc improvements:
- Fixed WebView < > and API calls.
- Improved description of virtual views.
- Described how to set boundaries of virtual views.
- Improved AUTOFILL_FLAG_INCLUDE_NOT_IMPORTANT_VIEWS doc.

Bug: 37567048
Test: ran 'm -j doc-comment-check-docs' and checked resulting HTML

Change-Id: Ic0d1e9ff2703c87d4007f0092a2f8dfe0efca6db
2017-05-25 16:10:08 -07:00
Selim Gurun
b18fbfa95f Update documentation for postmessage method
Bug: 35012584

Move wildcard description to body from parameter, as per API
documentation guidelines.

Test: documentation change

Change-Id: Ibf93bcd5bf509898d293db5729b760f5e1b023b4
2017-05-18 23:46:51 +00:00
Jeff Sharkey
12f4b76db2 Merge "Unbreak even more APK 26 apps running on "O" preview/beta builds." into oc-dev am: 997042ac33
am: c244963675

Change-Id: I30e0155a9260ec4099ad45d7161c8459c8b657a2
2017-05-18 16:11:07 +00:00
Jeff Sharkey
f383c24749 Unbreak even more APK 26 apps running on "O" preview/beta builds.
Bug: 38391358
Test: builds
Change-Id: Ic48f9cb53da3ed8241e5d40d3096304ee4dfebd2
2017-05-17 17:53:38 -06:00
TreeHugger Robot
285f9ff995 Merge "Take better control over Exceptions thrown in WebViewFactory." 2017-05-15 17:10:58 +00:00
Gustav Sennton
b715d405b5 Take better control over Exceptions thrown in WebViewFactory.
Turn WebViewFactory.MissingWebViewPackageException into a non-runtime
exception to avoid potential bugs where we miss catching that exception.

Also introduce a new exception specifically for IOExceptions thrown in
getLoadFromApkPath().

Bug: 28736099
Test: make an Angler build.

Change-Id: Ib07257eaefaaa79d7ea45ba0f609be7263438f6c
2017-05-15 13:19:35 +01:00
Andrew Solovay
9b6cdc584d Merge "docs: Changing "http" to "https" in Javadoc examples" into oc-dev am: c159323ebd
am: e6fa70bcec

Change-Id: Ie3d6b1468dc276aa5fcf64b34da517b87370ed26
2017-05-08 22:36:04 +00:00
Andrew Solovay
51142577ab docs: Changing "http" to "https" in Javadoc examples
Several of the Javadoc comments had code snippets that used "http"
web addresses (e.g. "http://example.com"). Our style heavily
recommends using https whenever possible; in addition, this caused
the generated Javadoc files to fail presubmit checks when we try
to migrate them to Piper (see, e.g., http://cl/155212684)

In addition, one code snipped used (as an example) a link to
http://slashdot.org/ ; we really shouldn't be using links to real
websited (that we don't control) unless we absolutely have to.

I changed all the examples to "https://example.com/" ; I've verified
that that's a valid URL (they've got a good certificate).

Generated the doc and staged it to:
go/dac-stage/reference/android/webkit/WebView.html

Test: make ds-docs
Bug: 37996959
Change-Id: Id8e44930b107b94022376a260892ed867ba281fc
2017-05-05 17:09:46 -07:00
TreeHugger Robot
eff8ed36b4 Merge "Add a time-out for connecting to SystemServer, and WebView, zygotes." 2017-05-02 10:00:27 +00:00
Gustav Sennton
f0c52b5e9c Add a time-out for connecting to SystemServer, and WebView, zygotes.
We wait for both the system server and the WebView zygotes, using
infinite loops.
This CL adds a time-out to both these loops.

Bug: 37654329
Test: Boot device, disable Chrome, enable Chrome, then start a WebView
app.

Change-Id: I74397de3caf2b02ee403195aeb3beb2320a2240d
2017-04-28 15:05:12 +01:00
Tima Vaisburd
5544f6c63b Hide onMovedToDisplay for WebView
Bug: 37724053
Test: Not needed
Change-Id: Ic6decc3be65e6b16f8fb42149f3e0798e855d4b7
2017-04-27 14:24:24 -07:00
Tima Vaisburd
2240ea6448 Hide getTextClassifier and setTextClassifier for WebView
Bug: 37724053
Test: Not needed, these methods have not been implemented.
Change-Id: I43c97cb13e80eeb13d53123a22230d5934b8a60d
2017-04-26 21:59:12 -07:00
Gustav Sennton
3202c10207 Merge "Explicitly wait for the WebView Zygote." into oc-dev 2017-04-25 16:05:58 +00:00
Gustav Sennton
833813cecc Explicitly wait for the WebView Zygote.
There is a time-window during which the WebViewZygote service has
started, but can't be connected to. To avoid crashing during this
time-window we add a retry-loop in this CL to explicitly initiate a
connection to the Zygote.

Bug: 36687066
Test: gts-tradefed run gts --module GtsWebViewHostTestCases
Change-Id: Ia58a3342cd4e149621ba6b4aaf926e7b53c06d8f
2017-04-24 16:08:39 +01:00
Abodunrinwa Toki
3f3354e087 Undeprecate WebView.findAddress
Reverts I772961bd20bff4817a060f14a843abeceb55ac92
Until we bring back TextClassifier.getLinks
See I275a9d055ef0ab68f3ca339c37ee939257c4bd54

Test: none
Bug: 22362008
Bug: 37565246
Change-Id: I2948f22cf4c3462491f47376af48624697703969
2017-04-24 14:41:14 +00:00
Selim Gurun
9858e5372a Deprecate findAddress() method
FindAddress method only ever worked on US addresses and being a part
of WebView API, it required the users that did not use WebView otherwise
to pay a heavy penalty. Further, it was also used by Linkify.

The new way to find addresses is using TextClassifier.

Bug: 22362008
Test: WebView.findAddress.

Change-Id: I772961bd20bff4817a060f14a843abeceb55ac92
2017-04-11 11:18:49 -07:00
Selim Gurun
ec0a1f2599 Add an API to enable disable safebrowsing in WebView
WebView safebrowsing can be opted in using a manifest value. However,
we also need to control individual WebViews.

Bug:37158813
Test: See change I71e813bccc2fab73d100384661128c7311dd396c

Change-Id: I647dc304787d6406691b5cbadf1c9a4f13ac5604
2017-04-07 18:46:18 -07:00
Tima Vaisburd
134752b471 Added onMovedToDisplay method to WebView
Delegate the action to WebViewProvider, by default it is no-op.

Bug: 36006397
Test: There is no implementation yet to test.
Change-Id: Ib5101d3669a92ae81cfb34cc5db607c374712a3d
2017-04-06 15:50:05 -07:00
Selim Gurun
13e5b0bb97 Disable WebView autocomplete feature.
Platform is now providing autofill feature. Disable WebView's simple
form data save feature for platform O and above.

Test: Removing the functionality and the test
Bug: 36869838

Change-Id: If6b9fc12edbe4146fca99d9c6ef8fde36d61f852
2017-04-04 10:19:28 -07:00
TreeHugger Robot
4d558930c8 Merge "Created an HtmlInfo object on ViewStructure." into oc-dev 2017-04-01 02:34:03 +00:00
TreeHugger Robot
c7f474668e Merge "Override View.autofill() method and call into ViewDelegate" into oc-dev 2017-03-31 02:57:38 +00:00
Philip P. Moltmann
81192b40de Rename autoFillHint to autoFillHints.
Fixes: 35364993
Test: cts-tradefed run cts-dev -m CtsAutoFillServiceTestCases
Change-Id: I65a4c2c65563e7bbd60c4e99c8800b0b11af2300
(cherry picked from commit feb3299ed5)
2017-03-30 23:45:33 +00:00
Tao Bai
a5717331d1 Override View.autofill() method and call into ViewDelegate
BUG: 36787841

Test: this just forwards api call.
Change-Id: Ie2c9675e5a7ee2ed2a7997d1270cf388571a855b
2017-03-30 15:02:53 -07:00