extensions: Minimally port system.display for Desktop Android This change ports a usable subset of chrome.system.display on Desktop Android. Extensions can now query display information with getInfo() and subscribe to onDisplayChanged, with the API moved into the Desktop-Android-enabled extensions-core schema and build wiring. On Android, ChromeExtensionsAPIClient now creates a display provider via DisplayInfoProviderAndroid. It fills in name and dpiX/dpiY from platform display data and now guarantees positive DPI fallback even when display metadata and scale factor are missing. The CL adds SystemDisplayAPI keyed-service wiring for Android extensions-core builds so onDisplayChanged listener lifecycle and BrowserContext shutdown correctly start/stop display observation, and declares the EventRouterFactory dependency required for the keyed API. Android-only guard conditions are expressed with IS_ANDROID for readability and consistency. In extension browser tests, manifest conversion helpers are now explicitly idempotent: if a manifest is already MV3 or already service-worker based, the helper returns success without rewriting. This keeps shared test-loading paths working for both legacy MV2 fixtures and tests authored directly as MV3/service-worker extensions. Bug: 417786011 Test: CQ Change-Id: Icd9049677bf5da154467a2dd37beedf737ee0438 Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/7558132 Reviewed-by: James Cook <jamescook@chromium.org> Commit-Queue: Di Wu <diwux@google.com> Cr-Commit-Position: refs/heads/main@{#1586847}
Chromium is an open-source browser project that aims to build a safer, faster, and more stable way for all users to experience the web.
The project's web site is https://www.chromium.org.
To check out the source code locally, don't use git clone! Instead, follow the instructions on how to get the code.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure.
For historical reasons, there are some small top level directories. Now the guidance is that new top level directories are for product (e.g. Chrome, Android WebView, Ash). Even if these products have multiple executables, the code should be in subdirectories of the product.
If you found a bug, please file it at https://crbug.com/new.