Bug
1526836 [wpt PR 15296] - Implement `navigator.getUserAgent()`, a=testonly
Automatic update from web-platform-tests
Implement `navigator.getUserAgent()`
This patch is smaller than it looks. It basically does the following:
1. It introduces `blink::UserAgentMetadata`, and a corresponding mojo
type in order to hold the various shards of data we'd like to expose
about user agents (brand, version, platform, architecture, and
model).
2. It threads these new types down from //chrome and //content/shell's
implementations of `ContentBrowserClient` down into Blink via the
same route we're using for the existing user-agent string
(ChromeContentBrowserClient -> RenderProcessHost -> RenderThread
-> Platform -> LocalFrameClient -> FrameLoader).
3. It extends `Navigator` with a new `NavigatorUserAgent` mixin that
exposes `navigator.getUserAgent()`. This returns a promise that
resolves with a newly defined `UserAgent` IDL dictionary type.
So, the patch is huge, but not really that complex.
Bug: 928670
Change-Id: I4f267e373864162264ad4d721650942b147b378d
Reviewed-on: https://chromium-review.googlesource.com/c/
1458098
Commit-Queue: Mike West <mkwst@chromium.org>
Reviewed-by: Yoav Weiss <yoavweiss@chromium.org>
Reviewed-by: Kinuko Yasuda <kinuko@chromium.org>
Cr-Commit-Position: refs/heads/master@{#631613}
--
wpt-commits:
290e4d77cd6418cf7b37351549c1ed2e5c62f557
wpt-pr: 15296