-
simon.fraser@apple.com authored
https://bugs.webkit.org/show_bug.cgi?id=116397 Reviewed by Andreas Kling. RenderStyle::diff() was prone to being changed incorrectly, since there was a poorly documented ordering requirement: style changes that cause layout have to be detected before those that cause only repainting. In addition, the existing code made it impossible to separately ask whether a given style change requires a repaint, if we've already detected that it requires a positioned-movement-only layout. Fix by factoring the code into member functions that check for each type of style change. No behavior change. * rendering/style/RenderStyle.cpp: (WebCore::positionChangeIsMovementOnly): (WebCore::RenderStyle::changeRequiresLayout): (WebCore::RenderStyle::changeRequiresPositionedLayoutOnly): (WebCore::RenderStyle::changeRequiresLayerRepaint): (WebCore::RenderStyle::changeRequiresRepaint): (WebCore::RenderStyle::changeRequiresRepaintIfText): (WebCore::RenderStyle::changeRequiresRecompositeLayer): (WebCore::RenderStyle::diff): * rendering/style/RenderStyle.h: git-svn-id: http://svn.webkit.org/repository/webkit/trunk@150348 268f45cc-cd09-0410-ab3c-d52691b4dbfc
c7301631