Bug 116397

Summary: Refactor RenderStyle::diff()
Product: WebKit Reporter: Simon Fraser (smfr) <simon.fraser>
Component: Layout and RenderingAssignee: Simon Fraser (smfr) <simon.fraser>
Status: RESOLVED FIXED    
Severity: Normal CC: bdakin, commit-queue, esprehn+autocc, glenn, hyatt, koivisto, simon.fraser
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 116319    
Attachments:
Description Flags
Patch kling: review+

Simon Fraser (smfr)
Reported 2013-05-18 13:32:13 PDT
RenderStyle::diff() is tricky for two reasons. First, there's nothing to enforce the requirement that "more work" diffs have to be detected before "less work" diffs (i.e. we have to always check for changes that result in StyleDifferenceLayout before changes that result in StyleDifferenceRepaint). Secondly, in some cases, even when we return, say, StyleDifferenceLayoutPositionedMovementOnly or StyleDifferenceRecompositeLayer, we also need to check for changes that require repaint, and that's not possible now.
Attachments
Patch (26.88 KB, patch)
2013-05-18 14:24 PDT, Simon Fraser (smfr)
kling: review+
Simon Fraser (smfr)
Comment 1 2013-05-18 14:24:49 PDT
Andreas Kling
Comment 2 2013-05-18 18:11:28 PDT
Comment on attachment 202217 [details] Patch r=me, this is great.
Simon Fraser (smfr)
Comment 3 2013-05-19 19:27:13 PDT
Note You need to log in before you can comment on or make changes to this bug.