Commit Graph

3804 Commits

Author SHA1 Message Date
Aurimas Liutikas
4d1699da48 Add missing nullability annotations.
To prepare for enabling MissingNullability Metalava check this CL
works on adding missing nullability issues that metalava flags if
we tell it to flag new things since API 29.

This is not a complete CL, mostly addresses public api and
toString/equals for @SystemApi

Exempt-From-Owner-Approval: Large scale nullability clean up
Bug: 124515653
Test: make -j checkapi
Change-Id: I109260842cfc25f06e40694997fcbb4afa02c867
2019-08-29 17:15:44 -07:00
Shimi Zhang
cc7628964c Merge "aw: Correct doc of addJavascriptInterface()" into qt-dev am: 62c764e29b am: d081f1064d am: 0922cc17be
am: 3446691be1

Change-Id: I8d7b836d8582fd63cc5bedfa4c7961f2c6603672
2019-08-27 19:56:22 -07:00
Shimi Zhang
0922cc17be Merge "aw: Correct doc of addJavascriptInterface()" into qt-dev am: 62c764e29b
am: d081f1064d

Change-Id: I2c02ba4da3494dfda62f13e5891a9a24e474abc7
2019-08-27 19:11:46 -07:00
Shimi Zhang
d081f1064d Merge "aw: Correct doc of addJavascriptInterface()" into qt-dev
am: 62c764e29b

Change-Id: Idaa6942a802f446e664ec3e2c6078258d9d2f8cc
2019-08-27 18:58:42 -07:00
Shimi Zhang
04a454f6a7 aw: Correct doc of addJavascriptInterface()
The Javadoc of addJavascriptInterface() mentioned that the injected
Java object will be injected to main frame, but this is not telling
a full picture. The current implementation will inject the Java
object to all the frames actually.

This CL corrected the misleading wording and add a new warning to
explicitly call it out as a security risk.

Bug: 113336656
Test: make ds-docs
Change-Id: Ia79381d1ab38afa963ea7365526749c14e25238c
2019-08-26 13:36:00 -07:00
Nate Fischer
200e1233f5 Merge "WebView: prettyprint docs" into qt-dev am: 20f2f0b5ea am: 6201d28952 am: e838a0353f
am: 095e1c1328

Change-Id: Ia247d0f5467886faea98d9055899a33daa8fe170
2019-08-19 14:45:51 -07:00
Nate Fischer
095e1c1328 Merge "WebView: prettyprint docs" into qt-dev am: 20f2f0b5ea am: 6201d28952
am: e838a0353f

Change-Id: I7042cc96f8dfd5151e41c4af780c7f420ec6896b
2019-08-19 14:08:07 -07:00
Nate Fischer
38b8fca177 Merge "WebView: prettyprint docs" into qt-dev am: 20f2f0b5ea
am: 6201d28952

Change-Id: I699c12ad87091c94601971ac56bf46966f16e740
2019-08-19 13:43:41 -07:00
Nate Fischer
b4defd6887 Merge "WebView: prettyprint docs" into qt-dev
am: 20f2f0b5ea

Change-Id: I30af1cf394092fa83c376e96f9d174bd456b6026
2019-08-19 13:22:57 -07:00
Nate Fischer
6201d28952 Merge "WebView: prettyprint docs" into qt-dev
am: 20f2f0b5ea

Change-Id: Iad51d33c434a42272c448ba7a807bdcbe6cb51d0
2019-08-19 13:22:49 -07:00
Nate Fischer
06fd060c14 WebView: prettyprint docs
No change to logic, only docs.

Use class=prettyprint so docs are syntax highlighted. This also fixes a
section which should have been an ordered list but abused <pre> instead.

Bug: 125526827
Test: make -j4 docs
Change-Id: Iac780ace066be35620d5121b1977df404eaf18c1
2019-08-13 22:23:10 +00:00
Tao Bai
178721a198 Merge "Update WebSettings.setSaveFormData deprecated doc" into qt-dev am: 7bb64fcf27 am: 22eceae195 am: 01006cc959
am: a53976b3d1

Change-Id: I49fdd449efb0c0bc8d331d27c927f60e3f9380f1
2019-08-01 09:33:03 -07:00
Tao Bai
a53976b3d1 Merge "Update WebSettings.setSaveFormData deprecated doc" into qt-dev am: 7bb64fcf27 am: 22eceae195
am: 01006cc959

Change-Id: I32bb088ca8a3fde9dff17e426db91465507906d8
2019-07-31 19:09:19 -07:00
Tao Bai
daa718b991 Merge "Update WebSettings.setSaveFormData deprecated doc" into qt-dev am: 7bb64fcf27
am: 22eceae195

Change-Id: I8afe18e9b51e59813b2b348666ff678e69eff1e1
2019-07-31 18:59:28 -07:00
Tao Bai
22eceae195 Merge "Update WebSettings.setSaveFormData deprecated doc" into qt-dev
am: 7bb64fcf27

Change-Id: Ife82891152d177e108db79f42fbe768fe8fb905a
2019-07-31 18:48:23 -07:00
Tao Bai
d232d92a45 Merge "Update WebSettings.setSaveFormData deprecated doc" into qt-dev
am: 7bb64fcf27

Change-Id: Ibe4a8108d0a1b678c3b51d683b1c1dcaeead5fa0
2019-07-31 18:45:37 -07:00
Tao Bai
990f9a9fda Update WebSettings.setSaveFormData deprecated doc
Bug:69150750
Test: passed sdk build.
Change-Id: Ia33ef5eda9956bf60dabc51a592ff6e9ec697b4a
2019-07-09 21:07:28 +00:00
Torne (Richard Coles)
a759af55a4 Merge "Clarify problems with Linkify.MAP_ADDRESSES." into qt-dev am: a0d66cf3f6 am: 0f0173f9e1
am: c2ed59a2da

Change-Id: Ibc2165020ad583db1c4488e68f8d688e9d7a8fe5
2019-06-06 11:13:16 -07:00
Torne (Richard Coles)
c2ed59a2da Merge "Clarify problems with Linkify.MAP_ADDRESSES." into qt-dev am: a0d66cf3f6
am: 0f0173f9e1

Change-Id: Ib8f8c29444f9cf6e1c4de4c15d3a0b4d12632556
2019-06-06 11:02:29 -07:00
Torne (Richard Coles)
0f0173f9e1 Merge "Clarify problems with Linkify.MAP_ADDRESSES." into qt-dev
am: a0d66cf3f6

Change-Id: I10e7f3f8d14d15e3dbc5fd6f97bafc7442c91bb4
2019-06-06 10:59:15 -07:00
Torne (Richard Coles)
a50d608b89 Merge "Clarify problems with Linkify.MAP_ADDRESSES." into qt-dev
am: a0d66cf3f6

Change-Id: I264a589322b87b09a5d250f1a7e71b7f1795f3dd
2019-06-06 10:59:10 -07:00
Torne (Richard Coles)
aa68ab8288 Clarify problems with Linkify.MAP_ADDRESSES.
Update the documentation for WebView.findAddress, as well as the related
functionality in Linkify and TextView, to clarify why the method is
deprecated, why it should not be used, and that it can cause unexpected
exceptions to be thrown from several places on older OS versions.

Fixes: 24676033
Test: m offline-sdk-docs
Change-Id: I45d82b9a4c9cf62d9566898dd21cd2139ad98f37
2019-06-04 14:14:05 -04:00
Felipe Leme
3fe70c6af0 DO NOT MERGE - Re-add ContentCapture support from standard SDK toolkit.
am: 911cb1fa76

Change-Id: I15c8da47beb6b4dd64b627aebb0288fcb359c3e5
2019-05-22 16:00:20 -07:00
Felipe Leme
d72176296d Revert "Temporarily hide some APIs."
This reverts commit 4e574efe28.

Test: m update-api ds-docs
Test: atest CtsContentCaptureServiceTestCases

Fixes: 130726495
Change-Id: I65e04d454afe552a34fa15ca8ce30f33db566770
2019-05-17 08:25:08 -07:00
Felipe Leme
911cb1fa76 DO NOT MERGE - Re-add ContentCapture support from standard SDK toolkit.
This reverts commit ef1c0b36ab.

Test: atest CtsContentCaptureServiceTestCases
Test: m update-api

Bug: 130726495

Change-Id: Iecda9df96722ac8a3184710796032b6c01bd8ea3
2019-05-16 16:05:51 -07:00
Torne (Richard Coles)
b8a473d462 Merge "Increase 32-bit WebView VA reservation." into qt-dev am: c7c7f9ecd7
am: e5b1bc3f5f

Change-Id: I4e7f0e29b9bfe3bd14f54f1f65b7019dd1e43702
2019-05-08 09:32:37 -07:00
Torne (Richard Coles)
e5b1bc3f5f Merge "Increase 32-bit WebView VA reservation." into qt-dev
am: c7c7f9ecd7

Change-Id: I82628f43fe6e3f8d520424536d0b1918760e08e2
2019-05-08 09:15:49 -07:00
Torne (Richard Coles)
4d72998fda Increase 32-bit WebView VA reservation.
Most pre-Q devices actually reserved around 130MiB in the 32-bit zygote
for the WebView native library; 100MiB was only the lower limit and the
file size based calculation that older OS versions use would come up
with a larger number. Increase the hardcoded value for Q to 130MiB so
that the behaviour is roughly the same across OS versions.

Fixes: 132081320
Test: manually verified via inspection of process maps
Change-Id: I0f03ac2f118bb0627ea6be229e5064d4590d8afb
2019-05-06 16:24:54 -04:00
Tobias Thierer
55ef631763 Merge "Inline calls to MimeUtils." am: 304132e995 am: d0457b20a2
am: e327e85014

Change-Id: If4af2b2689ac6cf2114ec20f9565b27ab0b47d1c
2019-05-02 07:21:26 -07:00
Tobias Thierer
e327e85014 Merge "Inline calls to MimeUtils." am: 304132e995
am: d0457b20a2

Change-Id: I6d8db5100e1fdbf1242ef8f48108cb73eae5b434
2019-05-02 07:10:16 -07:00
Tobias Thierer
d0457b20a2 Merge "Inline calls to MimeUtils."
am: 304132e995

Change-Id: Id40e722a539fd5212abac6ff1ed76e6ff0a6bff9
2019-05-02 06:58:38 -07:00
Tobias Thierer
bfa552c918 Inline calls to MimeUtils.
A separate CL in this topic adds MimeMap to the @CorePlatformApi and
deletes MimeUtils. This CL inlines calls to MimeUtils to call MimeMap
instead.

Bug: 120171727
Test: Treehugger
Change-Id: Ibad1e62a63342fa7527332d2b156b69517956364
2019-04-26 15:27:31 +01:00
Felipe Leme
4e574efe28 Temporarily hide some APIs.
Test: m update-api ds-docs
Test: atest CtsContentCaptureServiceTestCases

Bug: 130726495

Change-Id: I3b74c1370f6b6b102e440b65c4cdf6f225296856
2019-04-19 15:41:34 -07:00
Felipe Leme
ef1c0b36ab DO NOT MERGE - Removed ContentCapture support from standard SDK toolkit.
Test: atest CtsContentCaptureServiceTestCases
Test: m update-api
Test: make ds-docs

Fixes: 129982633

Change-Id: I5a0fa4231d0222638830c1abd8015d9f2635996a
2019-04-15 09:36:25 -07:00
Torne (Richard Coles)
05a766e876 Wait for RELRO before starting WebViewZygote at boot.
We start WebViewZygote at boot time to ensure the first app to use
WebView doesn't have to wait, but we were not waiting for RELRO creation
to finish before doing so. Move the background task which starts the
zygote to WebViewUpdateServiceImpl and have it wait for the RELRO first
to ensure that we get the memory saving of RELRO sharing whenever
possible, instead of only when the timing happens to work out by chance.

Fixes: 130305037
Test: manual, check logs and relro sharing status after boot
Change-Id: I55c3f80b0db1dc82727b90c70f777618ca77a942
2019-04-10 17:59:52 -04:00
Torne (Richard Coles)
5ca7aec419 Remove IWebViewUpdateService.isFallbackPackage.
All callers have been updated to no longer depend on this.

Bug: 129470358
Test: m checkbuild
Change-Id: Iff88e2825a9d1406b5d8f100ddcc5a11bdff2e68
2019-04-02 18:14:54 -04:00
Torne (Richard Coles)
ef47890d65 Migrate away from WebView fallback logic.
We no longer need to support fallback packages and need to migrate them
back to being enabled (but only once, to allow the user to disable them
manually later). This CL:

1) Removes the logic which enables/disables packages and the test cases
   which only cover the enabling/disabling logic.

2) Checks at boot time if the fallback logic is enabled; if so, it
   re-enables the fallback package if one exists and then disables the
   fallback logic permanently.

3) Amends remaining test cases to use "primary" and "secondary" instead
   of primary/fallback, to keep testing that higher priority packages
   are more preferred without involving the fallback behaviour.

4) Fixes a bug in the package selection logic that would not have
   triggered in the previous setup (as our production configs never had
   more than one available-by-default, non-fallback packages) that was
   revealed by one of the modified test cases: the boot time logic to
   reset the user's setting if their previously chosen provider was no
   longer available triggered even if the user had not actually chosen a
   provider, causing the automatically selected provider to be
   considered a manual user choice, and preventing a higher priority
   provider from being automatically chosen if it later becomes
   available.

Bug: 126588129
Test: atest WebViewUpdateServiceTest
Change-Id: I532c0faae2427de7132f716725bf62e256975410
2019-04-01 17:31:48 -04:00
Torne (Richard Coles)
689afe4149 Remove support for the WebView stub.
The WebView stub is only used in Monochrome configurations and is no
longer required with Trichrome. Remove the special case code used to
support it in the past.

Bug: 129470358
Test: atest CtsWebkitTestCases
Change-Id: Ieb11ae6698f370a1d601459e6253fc7dbe146014
2019-03-28 17:16:08 -04:00
Toby Sargeant
17501cab51 Merge "[wv-docs] Document force dark default, and behaviour of FORCE_DARK_AUTO" 2019-03-20 15:11:10 +00:00
Tobias Sargeant
e1fc791cff [wv-docs] Document force dark default, and behaviour of FORCE_DARK_AUTO
This adds a reference to the View method that controls framework force
dark, which impacts how FORCE_DARK_AUTO is interpreted. It also
documents that FORCE_DARK_AUTO is the default.

Test: documentation only change
Fixes: 128704481
Change-Id: I88e7996362da5b092b269c313e37ef9253b12872
2019-03-20 11:39:01 +00:00
Ashley Rose
d6b17862df Merge "Rename @EnumEntry and @FlagEntry" 2019-03-19 18:03:24 +00:00
Ashley Rose
73abdd3c59 Rename @EnumEntry and @FlagEntry
Test: atest CtsViewInspectorAnnotationProcessorTestCases
Bug: 127531820
Exempt-From-Owner-Approval: Annotation-only change
Change-Id: Id293e2b2ac9cf7bf2aaeb28645471ea227bb587b
2019-03-18 16:05:55 -04:00
Torne (Richard Coles)
85120a5474 WebView: add all APKs to asset path.
If there are multiple APKs as part of the WebView implementation (due to
splits, shared libraries, or overlays) add them all to the asset path,
instead of just the base APK.

Bug: 124116212
Test: manually tested with modified Trichrome build
Change-Id: I912e741b6de3154f66e5e82c9cf7154c6d39b1a4
2019-03-18 15:44:26 -04:00
Torne (Richard Coles)
3b6554e278 Partially revert "Handle WebView assets correctly when multiple APKs are used."
This reverts the WebViewFactory changes from commit
527fa8f4de which appear to have changed
the way that the asset path is updated in an incompatible way.

Bug: 124116212
Fixes: 128489090
Test: launch affected applications
Change-Id: Id53dedef4fa55a6b8cea8a60326a4b8acd3422f8
2019-03-13 12:33:29 -04:00
Torne (Richard Coles)
527fa8f4de Handle WebView assets correctly when multiple APKs are used.
Add all splits and shared libraries used by the WebView implementation
to the application's asset path, instead of just the base APK. Fix the
asset manipulation code path in WebViewFactory to reuse the modern
implementation in WebViewDelegate (using appendLibAssetForMainAssetPath)
instead of relying on addAssetPathAsSharedLibrary.

Add a new variant of appendLibAssetForMainAssetPath which accepts
multiple paths at once, to make it more efficient.

Bug: 124116212
Test: atest CtsWebkitTestCases
Change-Id: Ie55525d78089a4595c5b0b126e4ff1530303afe8
2019-03-12 11:41:09 -04:00
TreeHugger Robot
54626bf41f Merge "[webview] Rename force dark WebView settings." 2019-03-12 03:52:33 +00:00
TreeHugger Robot
f66f3ae921 Merge "[webview] rename unresponsive renderer APIs" 2019-03-12 02:37:30 +00:00
Shimi Zhang
b8e9c1c580 Merge "onPageFinished javadoc cleanup" into pi-dev am: dfd3a1b852
am: d4eed7352d

Change-Id: I0d405bad9ead8e1cd814c5634b5e0f69ead8956b
2019-03-11 17:45:09 -07:00
Shimi Zhang
d4eed7352d Merge "onPageFinished javadoc cleanup" into pi-dev
am: dfd3a1b852

Change-Id: Ib79006f63037bbbdc6a22c46ab790fc01a40c010
2019-03-11 17:36:38 -07:00
Tobias Sargeant
bbb043ae86 [webview] Rename force dark WebView settings.
Per API council request, remove setForceDarkMode -> setForceDark to
align with other framework naming.

Bug: 120599879
Test: None
Change-Id: I3f4ed00303d7e4b7d0651a384324a8b265663290
2019-03-11 23:54:27 +00:00