webview architecturally was designed to have a native layer that handles interaction with Java, and a browser layer that has the implementation. The initial design was such that:
WebView
Java
=======================
C++ Native
C++ Browser
=======================================
Content
C++
While this was designed for separating the Java logic from Native, it felt artificial, created extra code complexity in browser and was not compatible with rest of the chromium code.
We will now allow Browser code to talk to Java directly. This may lead to further simplification in Browser code (for example getting rid of interfaces we added to browser)
Also move graphics files to its own subdir.
As for the work, it would be good to start with
1: a description of subdirs and files that move there, and get consensus
2: do a mechanical move
3: reduce code complexity by getting rid of interfaces and delegates that was designed. For example Awcontentsclientbridge was completely designed as a bridge from Native to Java because of the requirement above.
Comment 1 by boliu@chromium.org
, Apr 28 2017