This is a large and fairly widely included header. The size of itself
and all the files it includes is 13 MB, it is part of ca 2,000
translation units for the 'chrome' target. Its added size for that
target is ca 5 GB. The compile time of the header alone is ca 4 s.
This change reduces the compile time of the header to ca 1 s,
and saves 8 CPU minutes of build time for the chrome target.
Bug: 242216
Change-Id: Idcaa4f6326545a64324a9d7fa45d6d27b136f622
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2794474
Commit-Queue: Hans Wennborg <hans@chromium.org>
Reviewed-by: Nico Weber <thakis@chromium.org>
Owners-Override: Nico Weber <thakis@chromium.org>
Cr-Commit-Position: refs/heads/master@{#868174}
This change converts the OnLoadScriptInjectorHost template to use
explicit instantiation for std::string and uint64_t. This will improve
compile times and also makes the types for ScriptId explicit. The
change also fixes the public deps of the build target.
Bug: None
Change-Id: I0b52f7486589071150a6f5747daef0a0c6fceaa4
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2468182
Commit-Queue: Brandon Tolsch <btolsch@chromium.org>
Reviewed-by: Kevin Marshall <kmarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#817587}
This is a reland of 13c126e31c
Addresses the size increase by removing the dep on //ui/base.
All uses of ui::ResourceBundle in CastRunner are replaced with disk
reads.
Original change's description:
> [bindings] Define cross-platform NamedMessagePortConnector impl.
>
> Refactors NamedMessagePortConnector into a platform-agnostic component,
> which can be reused across FIDL, in-process, and testing contexts.
> It uses Blink messages and message ports as a common basis for
> message and port transport.
>
> * Implements some missing portions of the Blink/FIDL MessagePort
> conversion layer.
> * Adds a Fuchsia implementation of NMPC.
>
> Bug: 1104369
> Change-Id: I01e86c38963bfb114a7466c6f73b143e5302ad1e
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2293110
> Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
> Reviewed-by: Jochen Eisinger <jochen@chromium.org>
> Reviewed-by: David Dorwin <ddorwin@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#806684}
Bug: 1104369
Change-Id: I77dc7679030e0f0aa61ad4dba2050ce2cb6e22d2
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2417492
Reviewed-by: Kevin Marshall <kmarshall@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
Cr-Commit-Position: refs/heads/master@{#808393}
This reverts commit 13c126e31c.
Reason for revert: This CL pulls in ui/base and increasing the size of CastRunner. The size increase is breaking the Chromium (into Fuchsia) roller.
Original change's description:
> [bindings] Define cross-platform NamedMessagePortConnector impl.
>
> Refactors NamedMessagePortConnector into a platform-agnostic component,
> which can be reused across FIDL, in-process, and testing contexts.
> It uses Blink messages and message ports as a common basis for
> message and port transport.
>
> * Implements some missing portions of the Blink/FIDL MessagePort
> conversion layer.
> * Adds a Fuchsia implementation of NMPC.
>
> Bug: 1104369
> Change-Id: I01e86c38963bfb114a7466c6f73b143e5302ad1e
> Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2293110
> Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
> Reviewed-by: Jochen Eisinger <jochen@chromium.org>
> Reviewed-by: David Dorwin <ddorwin@chromium.org>
> Cr-Commit-Position: refs/heads/master@{#806684}
TBR=ddorwin@chromium.org,kmarshall@chromium.org,jochen@chromium.org,lijiawei@chromium.org
# Not skipping CQ checks because original CL landed > 1 day ago.
Bug: 1104369
Change-Id: Ie5505f33dc2b29ce82fe5d44f8919e985da35102
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2414651
Reviewed-by: Sharon Yang <yangsharon@chromium.org>
Commit-Queue: Sharon Yang <yangsharon@chromium.org>
Cr-Commit-Position: refs/heads/master@{#807575}
Refactors NamedMessagePortConnector into a platform-agnostic component,
which can be reused across FIDL, in-process, and testing contexts.
It uses Blink messages and message ports as a common basis for
message and port transport.
* Implements some missing portions of the Blink/FIDL MessagePort
conversion layer.
* Adds a Fuchsia implementation of NMPC.
Bug: 1104369
Change-Id: I01e86c38963bfb114a7466c6f73b143e5302ad1e
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2293110
Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Reviewed-by: David Dorwin <ddorwin@chromium.org>
Cr-Commit-Position: refs/heads/master@{#806684}
Promotes ScriptId to a template parameter, so that the script injector
can be used for multiple purposes on a given platform.
Specifically, it will allow the use of uint64 script IDs on
FrameImpl, and base::StringPiece in bindings tests.
Migrate OnLoadScriptInjectorHost implementation from .cc to .h.
Bug: 1104369
Change-Id: Idfacd460d8d12038cfc2c00896e538ee87c55a1a
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2341837
Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
Reviewed-by: Sean Topping <seantopping@chromium.org>
Reviewed-by: Sharon Yang <yangsharon@chromium.org>
Cr-Commit-Position: refs/heads/master@{#795994}
Consolidates the forked OnLoadScriptInjectors into one single shared
implementation. The shared implementation is a necessary prerequisite
step for developing platform-agnostic bindings browsertests.
* Deletes Fuchsia and Cast specific OnLoadScriptInjectors.
* Moves most browser process logic into a new class
"OnLoadScriptInjectorHost", to further harmonize the platforms.
* Migrate Mojo interface from ScopedSharedBufferHandle to ReadOnlySharedMemoryRegion.
Merge-With: eureka-internal/432742
Bug: 1113289
Bug: 1060846
Bug: 1103058
Test: cast_shell_browsertests and web_engine_browsertests both pass.
Change-Id: If9fd2c54de08d9bc225771b01cdb32152a95fde8
Reviewed-on: https://chromium-review.googlesource.com/c/chromium/src/+/2286193
Commit-Queue: Kevin Marshall <kmarshall@chromium.org>
Reviewed-by: David Dorwin <ddorwin@chromium.org>
Reviewed-by: Nasko Oskov <nasko@chromium.org>
Reviewed-by: Sharon Yang <yangsharon@chromium.org>
Reviewed-by: Jochen Eisinger <jochen@chromium.org>
Cr-Commit-Position: refs/heads/master@{#795103}