Summary: | CSS Painting API code cleanup | ||||||
---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Justin Michaud <justin_michaud> | ||||
Component: | Layout and Rendering | Assignee: | Justin Michaud <justin_michaud> | ||||
Status: | RESOLVED FIXED | ||||||
Severity: | Normal | CC: | bfulgham, cdumez, commit-queue, darin, dino, rniwa, simon.fraser, webkit-bug-importer, zalan | ||||
Priority: | P2 | Keywords: | InRadar | ||||
Version: | WebKit Nightly Build | ||||||
Hardware: | Unspecified | ||||||
OS: | Unspecified | ||||||
Bug Depends on: | 191443 | ||||||
Bug Blocks: | |||||||
Attachments: |
|
Description
Justin Michaud
2018-12-06 16:01:42 PST
Created attachment 356763 [details]
Patch
Comment on attachment 356763 [details] Patch Clearing flags on attachment: 356763 Committed r238968: <https://trac.webkit.org/changeset/238968> All reviewed patches have been landed. Closing bug. Comment on attachment 356763 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=356763&action=review > Source/WebCore/rendering/style/RenderStyle.cpp:1042 > + if (changedCustomPaintWatchedProperty(*this, *m_rareNonInheritedData, other, *other.m_rareNonInheritedData)) > + return true; I don't think this is the right way to do this. You shouldn't trigger repaint for custom paint from here. You should evaluate inputs to custom paints, run the callback if necessary, then issue a repaint if the output changes. Comment on attachment 356763 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=356763&action=review >> Source/WebCore/rendering/style/RenderStyle.cpp:1042 >> + return true; > > I don't think this is the right way to do this. You shouldn't trigger repaint for custom paint from here. You should evaluate inputs to custom paints, run the callback if necessary, then issue a repaint if the output changes. I have a test case that seems to prove you right. If you mutate an a watched property immediately after importing a worklet, then it does not paint correctly. |