commit | e84ec47c42c1f55d1456b9decc5a7cf5e86fa059 | [log] [tgz] |
---|---|---|
author | Philip Rogers <pdr@chromium.org> | Tue Jul 17 00:58:50 2018 |
committer | Commit Bot <commit-bot@chromium.org> | Tue Jul 17 00:58:50 2018 |
tree | 95844784d42e782f0204f41683d2bb6b4c1295cc | |
parent | 70a3ddd223530315156081354fe9ede9168afd9b [diff] |
Reland: [BGPT] Move link highlights from WebViewImpl to Page This is a reland of [1] with a fix for animations not starting. This patch adds a CompositorAnimationHost to LinkHighlights, similar to how ScrollingCoordinator works, so that the link highlight timeline is connected to an animation host. A basic test has been added. [1] https://chromium-review.googlesource.com/c/chromium/src/+/1123315 Link highlights are currently owned by the WebViewImpl so their updates (creation, deletion, layout, paint) happen entirely outside the main LocalFrameView update lifecycle. In BlinkGenPropertyTrees we will need to create foreign layers for link highlights which needs to happen after the link highlight update (LinkHighlightImpl::UpdateGeometry) but before blink does the cc update (PaintArtifactCompositor::Update). This patch moves link highlights from WebViewImpl to Page which will let us manage their lifecycle from the main blink lifecycle update. This patch does not fix the issue of link highlights getting painted via a cc paint callback, which will need to be fixed for SPV2, but this does move us closer towards that goal. Bug: 857501 Change-Id: I921594484f7b41844b3e2b49c6ef79458f0e7c5b Cq-Include-Trybots: luci.chromium.try:linux-blink-gen-property-trees;luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel Reviewed-on: https://chromium-review.googlesource.com/1134413 Reviewed-by: Tien-Ren Chen <trchen@chromium.org> Commit-Queue: Philip Rogers <pdr@chromium.org> Cr-Commit-Position: refs/heads/master@{#575501}
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.
Documentation in the source is rooted in docs/README.md.
Learn how to Get Around the Chromium Source Code Directory Structure .