The ui/ directory should only contain the fundamental building blocks of UI components. It should not contain the UI features that are composed of those building blocks.
For cases where the UI is shared between WebView and Chrome, we should make them a component.
For cases where it is only used by one or the other, it should be moved to the respective directory.
Some examples that are the wrong layering:
1.) Autofill
Current location:
ui/android/java/src/org/chromium/ui/autofill
Desired location:
components/autofill/android
2.) Android view based HTML dropdowns:
Current location:
ui/android/java/src/org/chromium/ui/picker/
Desired location:
potentially to content, potentially to a component and extracted from content
3.) Android view based Color picker:
Current location:
ui/android/java/src/org/chromium/ui/*Color*.java
Desired location:
Most likely same as #2
We should use this as an opportunity to remove any classes directly in the root ui package for android (i.e. ui/android/java/src/org/chromium/ui). We should make the layering look like the C++ ui code. Then we can enforce ui DEPS correctly.
Comment 1 by tedc...@chromium.org
, Sep 30 2016Owner: wychen@chromium.org
Status: Assigned (was: Available)