Bug 1697979 - Part 1: Reuse previously built stacking context display items without merging r=mstange

Differential Revision: https://phabricator.services.mozilla.com/D128413
This commit is contained in:
Miko Mynttinen
2022-01-20 18:38:59 +00:00
parent f9e4342a90
commit cc5862abeb
17 changed files with 595 additions and 109 deletions

View File

@@ -1388,8 +1388,9 @@ void nsTableRowFrame::InvalidateFrame(uint32_t aDisplayItemKey,
bool aRebuildDisplayItems) {
nsIFrame::InvalidateFrame(aDisplayItemKey, aRebuildDisplayItems);
if (GetTableFrame()->IsBorderCollapse()) {
const bool rebuild = StaticPrefs::layout_display_list_retain_sc();
GetParent()->InvalidateFrameWithRect(InkOverflowRect() + GetPosition(),
aDisplayItemKey, false);
aDisplayItemKey, rebuild);
}
}
@@ -1402,7 +1403,7 @@ void nsTableRowFrame::InvalidateFrameWithRect(const nsRect& aRect,
// we get an inactive layer created and this is computed
// within FrameLayerBuilder
GetParent()->InvalidateFrameWithRect(aRect + GetPosition(), aDisplayItemKey,
false);
aRebuildDisplayItems);
}
/* ----- global methods ----- */