Always route intrinsic size info changes through FrameOwner.
This simplifies the process of passing intrinsic sizing info around by reusing the existing virtual on FrameOwner. Since the sizing info is only needed by the RemoteFrameOwner implementation, RemoteFrameOwner now uses LocalFrameView::GetIntrinsicSizingInfo() to calculate it on demand, rather than relying on LayoutSVGRoot to pass it down. However, this leads to some issues when building the layout tree; if LayoutSVGRoot notifies RemoteFrameOwner to recalculate the intrinsic sizing info, the call to GetIntrinsicSizingInfo() will fail, since the LayoutSVGRoot is not yet in the actual layout tree. To fix that, SVGSVGRoot now also overrides AttachLayoutTree() so that RemoteFrameOwner no longer has to rely on LayoutSVGRoot::StyleDidChange for the intrinsic sizing info changed notification when building the layout tree. Cq-Include-Trybots: master.tryserver.blink:linux_trusty_blink_rel;master.tryserver.chromium.linux:linux_layout_tests_slimming_paint_v2 Change-Id: I2f459e6dcaceae287a2c97bf56da67ddc8a4f8c8 Reviewed-on: https://chromium-review.googlesource.com/958287 Commit-Queue: Daniel Cheng <dcheng@chromium.org> Reviewed-by:Fredrik Söderquist <fs@opera.com> Cr-Commit-Position: refs/heads/master@{#542678}
Showing
Please register or sign in to comment