RESOLVED FIXED 235211
Don't call invalidateRectsForAllMarkers() for every layer in the updateLayerPositions() traversal
https://bugs.webkit.org/show_bug.cgi?id=235211
Summary Don't call invalidateRectsForAllMarkers() for every layer in the updateLayerP...
Simon Fraser (smfr)
Reported 2022-01-13 17:00:01 PST
Don't call invalidateRectsForAllMarkers() for every layer in the updateLayerPositions() traversal
Attachments
Patch (12.63 KB, patch)
2022-01-13 17:02 PST, Simon Fraser (smfr)
zalan: review+
Patch (12.67 KB, patch)
2022-01-13 19:48 PST, Simon Fraser (smfr)
no flags
Simon Fraser (smfr)
Comment 1 2022-01-13 17:02:39 PST
Sam Weinig
Comment 2 2022-01-13 19:12:49 PST
Comment on attachment 449126 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=449126&action=review > Source/WebCore/rendering/RenderLayer.cpp:942 > + renderer().document().markers().invalidateRectsForAllMarkers(); Why doesn't this one use willUpdateLayerPositions()?
zalan
Comment 3 2022-01-13 19:28:14 PST
Comment on attachment 449126 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=449126&action=review > Source/WebCore/rendering/RenderLayer.cpp:937 > + willUpdateLayerPositions(); > + recursiveUpdateLayerPositions(nullptr, flagsForUpdateLayerPositions(*this)); I don't think I could come up with better names, but these 2 lines will surely confuse me in the future.
Simon Fraser (smfr)
Comment 4 2022-01-13 19:48:15 PST
EWS
Comment 5 2022-01-13 22:16:21 PST
Committed r288008 (246034@main): <https://commits.webkit.org/246034@main> All reviewed patches have been landed. Closing bug and clearing flags on attachment 449130 [details].
Radar WebKit Bug Importer
Comment 6 2022-01-13 22:17:18 PST
Antti Koivisto
Comment 7 2022-01-14 05:33:13 PST
Comment on attachment 449126 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=449126&action=review > Source/WebCore/rendering/RenderLayer.cpp:1063 > + child->recursiveUpdateLayerPositions(geometryMap, flags); could this be something like updateLayerPositionsForSubtree?
Simon Fraser (smfr)
Comment 8 2022-01-14 09:40:16 PST
(In reply to Antti Koivisto from comment #7) > Comment on attachment 449126 [details] > Patch > > View in context: > https://bugs.webkit.org/attachment.cgi?id=449126&action=review > > > Source/WebCore/rendering/RenderLayer.cpp:1063 > > + child->recursiveUpdateLayerPositions(geometryMap, flags); > > could this be something like updateLayerPositionsForSubtree? It could, but that doesn't make it obvious that it's call recursively.
Antti Koivisto
Comment 9 2022-01-14 10:45:37 PST
> It could, but that doesn't make it obvious that it's call recursively. Why does that matter? If it was refactored to do the same thing iteratively would the callers care?
Simon Fraser (smfr)
Comment 10 2022-01-14 11:14:25 PST
If it were iterative, I would rename it of course, and the distinction between the "called-once" and the "called-one-per-layer" function wouldn't be necessary.
Note You need to log in before you can comment on or make changes to this bug.