Add RenderMultiColumnBlock to handle layout of multi-column blocks. This will allow most of the multi-column code that is polluting RenderBlock to be implemented in the subclass instead.
Created attachment 132313 [details] Patch
Comment on attachment 132313 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=132313&action=review > Source/WebCore/rendering/RenderMultiColumnBlock.cpp:43 > + if (isAnonymousBlock()) > + return "RenderMultiColumnBlock (anonymous)"; Just curious, can this case ever happen?
Comment on attachment 132313 [details] Patch View in context: https://bugs.webkit.org/attachment.cgi?id=132313&action=review > Source/WebCore/rendering/RenderMultiColumnBlock.cpp:44 > + else if (isAnonymous()) drive-by nit: s/else if/if/ for consistency, considering that we know that isAnonymousBlock() and other previous checks are false.
(In reply to comment #3) > (From update of attachment 132313 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=132313&action=review > > > Source/WebCore/rendering/RenderMultiColumnBlock.cpp:44 > > + else if (isAnonymous()) > > drive-by nit: s/else if/if/ for consistency, considering that we know that isAnonymousBlock() and other previous checks are false. Yup, sure. This was cut-and-paste from RenderBlock, which has the same issue.
(In reply to comment #2) > (From update of attachment 132313 [details]) > View in context: https://bugs.webkit.org/attachment.cgi?id=132313&action=review > > > Source/WebCore/rendering/RenderMultiColumnBlock.cpp:43 > > + if (isAnonymousBlock()) > > + return "RenderMultiColumnBlock (anonymous)"; > > Just curious, can this case ever happen? Theoretically it will be possible to create anonymous multi-column layouts using CSS Page Templates, so I figured I might as well leave it in.
Created attachment 132347 [details] New patch just to test EWS
Attachment 132347 [details] did not pass style-queue: Failed to run "['Tools/Scripts/check-webkit-style', '--diff-files', u'Source/WebCore/CMakeLists.txt', u'Source/W..." exit_code: 1 Source/WebCore/rendering/RenderMultiColumnBlock.h:35: This { should be at the end of the previous line [whitespace/braces] [4] Total errors found: 1 in 16 files If any of these errors are false positives, please file a bug against check-webkit-style.
Fixed in r111048. Will watch bots.