Ensure we can convert back and forth between frameworks and support library glue versions of post-L WebView Support Library classes. |
|||||
Issue descriptionCorresponding buganizer bug: b/77808798 To fully support per-method feature detection in the WebView Support Library we need to be able to convert between the framework version and the support library glue version of post-L WebView Support Library classes. In practice this means we need conversion methods in the support library glue converting between classes from the webkit glue and the support library glue - just like SupportLibWebkitToCompatConverterAdapter is doing https://cs.chromium.org/chromium/src/android_webview/support_library/java/src/org/chromium/support_lib_glue/SupportLibWebkitToCompatConverterAdapter.java except both ways (not just from webkit to the support library glue). The reason we need this is that any support library version can have APIs creating support library objects FooCompat implemented by either the framework or the support library glue. For this example, let's say we have such a method only implemented by the support library glue (on the current device), and let's also assume that we have another FooCompat method FooCompat.Bar() only implemented by the framework (of the current device). To implement FooCompat.Bar() we need to fetch frameworks-versions of the (implementation of the) FooCompat object we fetched from the support library glue. IMO the change that fixes this bug should be merged into 67 to be shipped with the first version of the support library.
,
Apr 27 2018
,
Apr 30 2018
The following revision refers to this bug: https://chromium.googlesource.com/chromium/src.git/+/ca19570d6f478a845897df912efdd7d649af0686 commit ca19570d6f478a845897df912efdd7d649af0686 Author: Gustav Sennton <gsennton@google.com> Date: Mon Apr 30 19:12:46 2018 [android webview] properly support per-method feature detection. To properly support per-method feature detection we need to allow converting back and forth between support library and frameworks classes. This CL adds support for converting between webkit and support library objects for already implemented post-L classes: 1. ServiceWorkerController 2. ServiceWorkerWebSettings 3. WebResourceError This is a cherry-pick to 67. Bug: 836339 Change-Id: I334d17153eb8d71834e1fafc43676bc2c706b4e2 Reviewed-on: https://chromium-review.googlesource.com/1027815 Commit-Queue: Gustav Sennton <gsennton@chromium.org> Reviewed-by: Richard Coles <torne@chromium.org> Reviewed-by: Nate Fischer <ntfschr@chromium.org> Cr-Original-Commit-Position: refs/heads/master@{#554356}(cherry picked from commit db9520ce98b750e578caf7270eee0c5130a0e1fb) Reviewed-on: https://chromium-review.googlesource.com/1034533 Cr-Commit-Position: refs/branch-heads/3396@{#391} Cr-Branched-From: 9ef2aa869bc7bc0c089e255d698cca6e47d6b038-refs/heads/master@{#550428} [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/glue/BUILD.gn [add] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/glue/java/src/com/android/webview/chromium/WebResourceErrorAdapter.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/glue/java/src/com/android/webview/chromium/WebViewContentsClientAdapter.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/glue/java/src/com/android/webview/chromium/WebkitToSharedGlueConverter.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/support_library/boundary_interfaces/src/org/chromium/support_lib_boundary/WebkitToCompatConverterBoundaryInterface.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/support_library/boundary_interfaces/src/org/chromium/support_lib_boundary/util/BoundaryInterfaceReflectionUtil.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/support_library/callback/BUILD.gn [add] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/support_library/callback/java/src/org/chromium/support_lib_callback_glue/SupportLibWebResourceError.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/support_library/callback/java/src/org/chromium/support_lib_callback_glue/SupportLibWebViewContentsClientAdapter.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/support_library/java/src/org/chromium/support_lib_glue/SupportLibServiceWorkerSettingsAdapter.java [modify] https://crrev.com/ca19570d6f478a845897df912efdd7d649af0686/android_webview/support_library/java/src/org/chromium/support_lib_glue/SupportLibWebkitToCompatConverterAdapter.java
,
Apr 30 2018
Keeping this open until crbug.com/837815 is done. Otherwise this is done.
,
May 4 2018
Closing as per comment #4
,
May 7 2018
ntfschr@ can we mark it has verified this issue? as this don't manual steps to verify?
,
May 7 2018
Gustav verified this as he landed it, no other manual verification necessary. |
|||||
►
Sign in to add a comment |
|||||
Comment 1 by bugdroid1@chromium.org
, Apr 27 2018