| Summary: | RenderLayer::hasVisibleContent() incorrect when layer removed | ||
|---|---|---|---|
| Product: | WebKit | Reporter: | Ahmad Saleem <ahmad.saleem792> |
| Component: | Layout and Rendering | Assignee: | Ahmad Saleem <ahmad.saleem792> |
| Status: | RESOLVED FIXED | ||
| Severity: | Normal | CC: | bfulgham, karlcow, koivisto, simon.fraser, webkit-bug-importer, zalan |
| Priority: | P2 | Keywords: | BrowserCompat, InRadar |
| Version: | WebKit Nightly Build | ||
| Hardware: | Unspecified | ||
| OS: | Unspecified | ||
|
Description
Ahmad Saleem
2023-03-10 08:08:24 PST
That looks like a low hanging fruit. Indeed.
diff --git a/Source/WebCore/rendering/RenderLayer.cpp b/Source/WebCore/rendering/RenderLayer.cpp
index db8ca3df7421..432a841c61e8 100644
--- a/Source/WebCore/rendering/RenderLayer.cpp
+++ b/Source/WebCore/rendering/RenderLayer.cpp
@@ -475,6 +475,8 @@ void RenderLayer::removeChild(RenderLayer& oldChild)
if (oldChild.hasBlendMode() || (oldChild.hasNotIsolatedBlendingDescendants() && !oldChild.isolatesBlending()))
dirtyAncestorChainHasBlendingDescendants();
#endif
+ if (renderer().style().visibility() != Visibility::Visible)
+ dirtyVisibleContentStatus();
}
void RenderLayer::dirtyPaintOrderListsOnChildChange(RenderLayer& child)
shows green.
(In reply to zalan from comment #3) > Indeed. > diff --git a/Source/WebCore/rendering/RenderLayer.cpp > b/Source/WebCore/rendering/RenderLayer.cpp > index db8ca3df7421..432a841c61e8 100644 > --- a/Source/WebCore/rendering/RenderLayer.cpp > +++ b/Source/WebCore/rendering/RenderLayer.cpp > @@ -475,6 +475,8 @@ void RenderLayer::removeChild(RenderLayer& oldChild) > if (oldChild.hasBlendMode() || > (oldChild.hasNotIsolatedBlendingDescendants() && > !oldChild.isolatesBlending())) > dirtyAncestorChainHasBlendingDescendants(); > #endif > + if (renderer().style().visibility() != Visibility::Visible) > + dirtyVisibleContentStatus(); > } > > void RenderLayer::dirtyPaintOrderListsOnChildChange(RenderLayer& child) > > shows green. Running through EWS - https://github.com/WebKit/WebKit/pull/12005 Let's see. Committed 262284@main (059e2bb75dc3): <https://commits.webkit.org/262284@main> Reviewed commits have been landed. Closing PR #12005 and removing active labels. |