summaryrefslogtreecommitdiff
AgeCommit message (Collapse)Author
2018-03-29AW: use correct ClassLoader in dupeMethodandroid-9.0.0_r47android-9.0.0_r46android-9.0.0_r45android-9.0.0_r44android-9.0.0_r43android-9.0.0_r42android-9.0.0_r41android-9.0.0_r40android-9.0.0_r39android-9.0.0_r38android-9.0.0_r37android-9.0.0_r36android-9.0.0_r35android-9.0.0_r34android-9.0.0_r33android-9.0.0_r32android-9.0.0_r31android-9.0.0_r30android-9.0.0_r22android-9.0.0_r21android-9.0.0_r20android-9.0.0_r19android-9.0.0_r16android-9.0.0_r12android-9.0.0_r11pie-qpr3-s1-releasepie-qpr3-releasepie-qpr3-b-releasepie-qpr2-releasepie-qpr1-s3-releasepie-qpr1-s2-releasepie-qpr1-s1-releasepie-qpr1-releasepie-dr1-releasepie-dr1-devpie-devpie-b4s4-releasepie-b4s4-devNate Fischer
This fixes an issue with the support library where we would sometimes create an InvocationHandler and look up methods using the wrong ClassLoader. This ensures we always use the correct ClassLoader. dupeMethod() is only used here, so it's safe to change the signature. See the crbug for more information. Bug: 826988 Test: Manual, did this in my demo CL at http://crrev/c/965883 Change-Id: I7ca7bb90aec81a6a30ce4d6393cf40ee54d40c19 Reviewed-on: https://chromium-review.googlesource.com/985631 Reviewed-by: Richard Coles <torne@chromium.org> Commit-Queue: Nate Fischer <ntfschr@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#546961} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: c6aed4c0fe3d8eeb3ae7f2bdd32cc6433cdf929c
2018-03-28AW: add boundary interfaces for new classes used in callbacksNate Fischer
This adds boundary interfaces for SafeBrowsingResponse and WebResourceError, both of which are post-L classes added in WebViewClient callbacks (onSafeBrowsingHit() and onReceivedError()). Design doc: http://go/wv-support-library-callbacks Bug: 781764 Test: N/A Change-Id: Idcf1b4af21b197f951192b5a262f63ec0500debe Reviewed-on: https://chromium-review.googlesource.com/982651 Reviewed-by: Richard Coles <torne@chromium.org> Commit-Queue: Nate Fischer <ntfschr@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#546590} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: b73c062f19bf41d9f50c405302b9bdfe419b554d
2018-03-23AW: add WebViewClient boundary interfaceNate Fischer
No change to logic. This adds WebViewClientBoundaryInterface, which will be implemented by WebViewClientCompat on the support library side. These methods will be invoked from the support_library side in later CLs, as we implement each callback. Bug: 781764 Test: N/A Change-Id: I2ba052ff02076cec1c9d4e360aed322a63b511ef Reviewed-on: https://chromium-review.googlesource.com/974898 Reviewed-by: Richard Coles <torne@chromium.org> Reviewed-by: Gustav Sennton <gsennton@chromium.org> Commit-Queue: Nate Fischer <ntfschr@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#545575} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 2636fba313a00683509bc25cf4e79ad1f917ee49
2018-03-22[WebView Support Library] Support service worker APIs.Gustav Sennton
Provide (chromium-side) support for ServiceWorkers in the WebView Support Library. We'll add feature flags for the ServiceWorker APIs in a follow-up. Bug: 819595 Change-Id: Id4c79e3970706633e36b28538c443a00c7e59e03 Reviewed-on: https://chromium-review.googlesource.com/964142 Reviewed-by: Richard Coles <torne@chromium.org> Reviewed-by: Nate Fischer <ntfschr@chromium.org> Commit-Queue: Gustav Sennton <gsennton@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#545024} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 824511444f1772442551af893e3e0fdeafed177a
2018-03-12[WebView Support Library] Pass and fetch list of supported features.Gustav Sennton
We need some way for either side (android support library + chromium) of the webview support library to tell what features the other side of the support library supports. We do this by passing a list of integers across the boundary. These integers will each represent a feature (which will be defined in a class in the boundary interface package). Add a single feature to the list of features to support (visual state callback). Bug: 740082 Change-Id: I791af590cb846d536d01d63649ab6cfffe558ee9 Reviewed-on: https://chromium-review.googlesource.com/941805 Commit-Queue: Gustav Sennton <gsennton@chromium.org> Reviewed-by: Nate Fischer <ntfschr@chromium.org> Reviewed-by: Bo <boliu@chromium.org> Reviewed-by: Richard Coles <torne@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#542169} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: ba016de1efcd69651c043f5958e9c4530c7d36a2
2018-03-09[android_webview] Save boundary interfaces from proguard obfuscationGustav Sennton
We need to keep the names of all boundary interface classes and methods used by the support library and chromium to ensure their names are the same in the support library as in the WebView APK. However, utility classes in the boundary interface package can be obfuscated just fine since they are not part of the boundary interface API. Ideally then, we will put everything that is part of the boundary interface API in one specific package, and keep utility methods in a sub-package, to allow for simple proguard rules (and avoid bugs where we incorrectly keep/remove new boundary interfaces). Bug: 809471 Change-Id: I7a700fcc50998d83bf3bfa799196477289bedb3e Reviewed-on: https://chromium-review.googlesource.com/943504 Reviewed-by: agrieve <agrieve@chromium.org> Reviewed-by: Richard Coles <torne@chromium.org> Commit-Queue: Gustav Sennton <gsennton@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#540800} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 0a6e992e64dcf503e038e34a0c7952172b29d9a9
2018-02-28[WebView] Add support library support for WebViewFactoryProvider.Statics am: ↵Gustav Sennton
cd3a69c937 am: e9fe5820f1 am: 4620eadd53 Change-Id: I9d5e234184e6b6606086d8e9de59816016f510c7
2018-02-28[WebView] Add support library support for WebViewFactoryProvider.Statics am: ↵Gustav Sennton
cd3a69c937 am: e9fe5820f1 Change-Id: I9199e67defa296239dab64a4308292338508c5a8
2018-02-28[WebView] Add support library support for WebViewFactoryProvider.StaticsGustav Sennton
am: cd3a69c937 Change-Id: Iff93114b07bff3f8c0ad3da08220006838a20c27
2018-02-28[WebView] Add support library support for WebViewFactoryProvider.StaticsGustav Sennton
Static WebView methods are implemented using the class WebViewFactoryProvider.Statics, in this CL we implement the corresponding class for the WebView support library. Bug: 816506 Change-Id: I3909a8f1b78a79ed06895da0611ca643231e1716 Reviewed-on: https://chromium-review.googlesource.com/939391 Reviewed-by: Bo <boliu@chromium.org> Commit-Queue: Gustav Sennton <gsennton@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#539453} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 4cadbe42f5180aa81a32d4c6c3e416b6f3042b1b
2018-02-26Add support for WebSettingsCompat. am: 6903c25f93 am: 91bf122a2dGustav Sennton
am: a9c4bbe23f Change-Id: I229408184e2c63b9ffd8428670b069c0371bb081
2018-02-26Add support for WebSettingsCompat. am: 6903c25f93Gustav Sennton
am: 91bf122a2d Change-Id: I5b197fb06e943d7e08a25ee2f1025b8586ee928c
2018-02-26Add support for WebSettingsCompat.Gustav Sennton
am: 6903c25f93 Change-Id: I7ee6c4a87a9d7a4e0b3ca52b555ba1bb73aa0e8c
2018-02-26Add support for WebSettingsCompat.Gustav Sennton
Also add a webkit-to-compat converter object which takes webkit objects, and returns the implementation for the corresponding Compat-object. E.g. WebSettings -> implementation for WebSettingsCompat. Bug: 812657 Change-Id: Ifb5507ec3f4f620621ab05b73d643abcc184cf85 Reviewed-on: https://chromium-review.googlesource.com/922623 Reviewed-by: Bo <boliu@chromium.org> Commit-Queue: Gustav Sennton <gsennton@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#539153} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: c3fcc3e0d7908ae3f1f9bb6b70365780624be278
2018-02-15[Boundary interfaces] Add utility methods for support library boundary am: ↵Gustav Sennton
7b527a9a1c am: 5177c1d7ef am: b127c8d137 Change-Id: I2156a1fcddd7cc3676f58d599b6d6a2b236ea8a5
2018-02-15[Boundary interfaces] Add a package file to hide boundary interfaces am: ↵Gustav Sennton
8858477884 am: 4027ff7daf am: 186b21ab8f Change-Id: I14bd448e101ff61070bd04b4c16436818a70b106
2018-02-15Rename boundary interfaces, and pass WebView to WVFP.createWebView. am: ↵Gustav Sennton
32e305a583 am: 81a9af232c am: 9825ebf27f Change-Id: Ibc1a18b42293aea238e6ec9c514d080bb50b91fd
2018-02-15[WebView] Add directory for interfaces between support library and glue am: ↵Gustav Sennton
2dcef84ac9 am: db640b591a am: 6c54bf9d74 Change-Id: Ieb4106ca9b30f8b6fbc6be7908d1e61e3bde8e8e
2018-02-15[Boundary interfaces] Add utility methods for support library boundary am: ↵Gustav Sennton
7b527a9a1c am: 5177c1d7ef Change-Id: I3a1ff585b8cebc5b1219b20b03a18a46cde82b4e
2018-02-15[Boundary interfaces] Add a package file to hide boundary interfaces am: ↵Gustav Sennton
8858477884 am: 4027ff7daf Change-Id: Ie28e052226308b701ff36b75bf84d4a0a7dbc34d
2018-02-15Rename boundary interfaces, and pass WebView to WVFP.createWebView. am: ↵Gustav Sennton
32e305a583 am: 81a9af232c Change-Id: I877d4407b97d565c41a0170a0e71020064cb67ad
2018-02-15[WebView] Add directory for interfaces between support library and glue am: ↵Gustav Sennton
2dcef84ac9 am: db640b591a Change-Id: I7efe2d94a1e872012e89d6b1ac9cb89f5bb68688
2018-02-15[Boundary interfaces] Add utility methods for support library boundaryGustav Sennton
am: 7b527a9a1c Change-Id: I209d647146ec973a5c9afa90737440b2a16cac8c
2018-02-15[Boundary interfaces] Add a package file to hide boundary interfacesGustav Sennton
am: 8858477884 Change-Id: I4a03d20d5d0af58912da2f0c932a89809ab230b1
2018-02-15Rename boundary interfaces, and pass WebView to WVFP.createWebView.Gustav Sennton
am: 32e305a583 Change-Id: Ie0c22935adeb21189a486098e88243b6995dec5f
2018-02-15[WebView] Add directory for interfaces between support library and glueGustav Sennton
am: 2dcef84ac9 Change-Id: I538754bfcb0082bf1dd6b7c626e26337efea8f58
2018-02-14[Boundary interfaces] Add utility methods for support library boundaryGustav Sennton
The WebView support library (in the Android Support Library) and the WebView support library glue (in Chromium) will both need methods for mapping a class loaded in some ClassLoader into a class loaded in the current ClassLoader. In this CL we put that utility in the boundary interface directory to avoid duplicating this Class-conversion functionality in both the Android Support Library and Chromium (instead this functionality will be mirrored from Chromium into the support library). Bug: 788177 Change-Id: Icea382115bedd53d1b255d3a115fff03fcdb15ba Reviewed-on: https://chromium-review.googlesource.com/919062 Reviewed-by: Richard Coles <torne@chromium.org> Commit-Queue: Gustav Sennton <gsennton@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#536720} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: e5f7a795c810e53cf9d0bfa6b7c31fd21c3b3e1c
2018-02-14[Boundary interfaces] Add a package file to hide boundary interfacesGustav Sennton
Android publishes all public APIs that are not marked with the @hide annotation. Boundary interfaces are not supposed to be public to apps. In this CL we add a file with the sole purpose of hiding the boundary interface package from apps. Bug: 788177 Change-Id: I58c9c7a8445c1a3fdfda3164735f5e2c755dfc44 Reviewed-on: https://chromium-review.googlesource.com/918861 Reviewed-by: Richard Coles <torne@chromium.org> Commit-Queue: Gustav Sennton <gsennton@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#536719} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 0293525c239e35235b4ea8375d84956b4185efad
2018-02-13[WebView] Add directory for interfaces between support library and glueGustav Sennton
We will build a set of interfaces to communicate between the WebView support library (statically built into apps), and the WebView support library glue layer (built into the WebView APK, loaded into app processes at run-time). To allow Chromium and the Android Support Library to share these interfaces we put them in their own directory, and mirror that directory publicly so that they can be referenced by the support library. This CL creates the interface directory, and adds some examples of interfaces. BUG=755506 Change-Id: I3f7040c4ab88c7e0d26379aebc4b74fb53eee1de Reviewed-on: https://chromium-review.googlesource.com/768712 Commit-Queue: Gustav Sennton <gsennton@chromium.org> Reviewed-by: Richard Coles <torne@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#516688} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: b1ea1aff463b4c061a3c7f60894129bff89e8bb1
2018-02-12Rename boundary interfaces, and pass WebView to WVFP.createWebView.Gustav Sennton
Suffix all boundary interfaces with 'BoundaryInterfaces'. Pass WebView instead of an Object representing a WebViewProvider to the method for creating support library WebViewProviders - the chromium-side is compiled against the system sdk so we can fetch the corresponding WebViewProvider from the given WebView from there. Bug: 788177 Change-Id: I51d71ecab79624902031e5fdab247f7d903ae335 Reviewed-on: https://chromium-review.googlesource.com/911088 Reviewed-by: Richard Coles <torne@chromium.org> Commit-Queue: Gustav Sennton <gsennton@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#535714} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: 4235bf67f2a85c2e044b22b4cf37e2243c1912ac
2018-02-01[WebView] Add directory for interfaces between support library and glueGustav Sennton
We will build a set of interfaces to communicate between the WebView support library (statically built into apps), and the WebView support library glue layer (built into the WebView APK, loaded into app processes at run-time). To allow Chromium and the Android Support Library to share these interfaces we put them in their own directory, and mirror that directory publicly so that they can be referenced by the support library. This CL creates the interface directory, and adds some examples of interfaces. BUG=755506 Change-Id: I3f7040c4ab88c7e0d26379aebc4b74fb53eee1de Reviewed-on: https://chromium-review.googlesource.com/768712 Commit-Queue: Gustav Sennton <gsennton@chromium.org> Reviewed-by: Richard Coles <torne@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#516688} Cr-Mirrored-From: https://chromium.googlesource.com/chromium/src Cr-Mirrored-Commit: b1ea1aff463b4c061a3c7f60894129bff89e8bb1
2017-12-18Initial empty repository(raulenrique)