Bug 1464641 - Make sure we mark the out of flow frame as modified when we modify the placeholder. r?miko
MozReview-Commit-ID: L44fXMOpURM
--- a/layout/generic/nsFrame.cpp
+++ b/layout/generic/nsFrame.cpp
@@ -996,16 +996,20 @@ nsIFrame::MarkNeedsDisplayItemRebuild()
if (!nsLayoutUtils::AreRetainedDisplayListsEnabled() ||
IsFrameModified() ||
HasAnyStateBits(NS_FRAME_IN_POPUP)) {
// Skip frames that are already marked modified.
return;
}
if (Type() == LayoutFrameType::Placeholder) {
+ nsIFrame* oof = static_cast<nsPlaceholderFrame*>(this)->GetOutOfFlowFrame();
+ if (oof) {
+ oof->MarkNeedsDisplayItemRebuild();
+ }
// Do not mark placeholder frames modified.
return;
}
nsIFrame* displayRoot = nsLayoutUtils::GetDisplayRootFrame(this);
MOZ_ASSERT(displayRoot);
RetainedDisplayListBuilder* retainedBuilder =