Commit eeb3499a authored by Vladimir Levin's avatar Vladimir Levin Committed by Commit Bot

Disable iframe isolation nodes via a flag.

This patch introduces a flag for layout view isolation nodes, since
it seems to have caused a memory regression. The flag would allow to
easily test the memory usage and other perf benefits. I'll remove the
flag and enable by default when the problems are resolved.

R=chrishtr@chromium.org, pdr@chromium.org, wangxianzhu@chromium.org

Bug: 895270
Cq-Include-Trybots: luci.chromium.try:linux_layout_tests_slimming_paint_v2;master.tryserver.blink:linux_trusty_blink_rel
Change-Id: Iaa74c997dc3d211d0a870fdff303a9c94b5312e9
Reviewed-on: https://chromium-review.googlesource.com/c/1282204Reviewed-by: default avatarXianzhu Wang <wangxianzhu@chromium.org>
Reviewed-by: default avatarChris Harrelson <chrishtr@chromium.org>
Commit-Queue: vmpstr <vmpstr@chromium.org>
Cr-Commit-Position: refs/heads/master@{#600036}
parent fa8c65de
......@@ -322,7 +322,8 @@ static bool NeedsIsolationNodes(const LayoutObject& object) {
// Layout view establishes isolation with the exception of local roots (since
// they are already essentially isolated).
if (object.IsLayoutView()) {
if (RuntimeEnabledFeatures::LayoutViewIsolationNodesEnabled() &&
object.IsLayoutView()) {
const auto* parent_frame = object.GetFrame()->Tree().Parent();
return parent_frame && parent_frame->IsLocalFrame();
}
......
......@@ -1812,6 +1812,9 @@ TEST_P(PaintPropertyTreeBuilderTest, TransformNodesAcrossSubframes) {
}
TEST_P(PaintPropertyTreeBuilderTest, FramesEstablishIsolation) {
if (!RuntimeEnabledFeatures::LayoutViewIsolationNodesEnabled())
return;
SetBodyInnerHTML(R"HTML(
<style>
body { margin: 0; }
......
......@@ -670,6 +670,9 @@
name: "LayoutNGFragmentCaching",
implied_by: ["LayoutNG"],
},
{
name: "LayoutViewIsolationNodes",
},
{
name: "LazyFrameLoading",
},
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment