
Before this CL, there are some files which include linux_ui.h on non-linux platforms without depending on the linux_ui target (which is linux-only). It could cause issues described in crbug.com/1522282. In order to fix that, this CL moves some types defined previously in linux_ui.h to ui/display/types. BUG=1522282 Change-Id: Ia98deee31d30d4a7d4594050c360cce96693b942 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/5241760 Commit-Queue: Yuzhu Shen <yzshen@chromium.org> Reviewed-by: Mitsuru Oshima <oshima@chromium.org> Cr-Commit-Position: refs/heads/main@{#1252982}
//ui/base
This directory contains low-level code that is reused throughout the chromium UI stack. Code in this directory can't depend on most of the rest of //ui (with a few exceptions), and code throughout the rest of //ui can depend on it.
Toolkit-specific libraries in this directory include:
- cocoa: for working with Cocoa on macOS
- wayland: for Linux systems with Wayland
- webui: for WebUI in Chromium
- win: for Windows systems
- (x): for Linux systems with X11
Platform-independent libraries in this directory include:
- l10n: localization APIs used throughout all of chromium, especially
the widely-used
l10n_util::GetString*
functions - metadata: the implementation of the property/metadata system used throughout views
- models: toolkit-agnostic types used to represent the data shown in UI controls and dialogs
- resource: resource bundle APIs, which are used for retrieving icons and raw localized strings from the app package
As with most "base" libraries this is somewhat of a dumping ground of code that is used in a bunch of other places, and there's no hard and fast rule to tell what should or shouldn't be in here. If in doubt, consult with the owners.