Bug 149132

Summary: [New Block-Inside-Inline Model] Implement margin collapsing across anonymous inline blocks
Product: WebKit Reporter: Dave Hyatt <hyatt>
Component: Layout and RenderingAssignee: Dave Hyatt <hyatt>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, commit-queue, eoconnor, esprehn+autocc, glenn, kondapallykalyan, mmaxfield, rniwa
Priority: P2    
Version: WebKit Nightly Build   
Hardware: Unspecified   
OS: Unspecified   
Attachments:
Description Flags
Patch
none
Patch
buildbot: commit-queue-
Archive of layout-test-results from ews103 for mac-mavericks
none
Archive of layout-test-results from ews106 for mac-mavericks-wk2
none
Patch
none
Patch zalan: review+

Description Dave Hyatt 2015-09-14 14:57:38 PDT
Anonymous inline blocks still have to margin collapse with contiguous lines (and into the top and bottom of the containing block). This means line layout has to become a hybrid of block and line layout and able to perform margin collapsing on contiguous anonymous inline block lines.
Comment 1 Dave Hyatt 2015-09-14 15:18:30 PDT
Created attachment 261137 [details]
Patch
Comment 2 WebKit Commit Bot 2015-09-14 15:20:50 PDT
Attachment 261137 [details] did not pass style-queue:


ERROR: Source/WebCore/rendering/RenderBlockLineLayout.cpp:1176:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebCore/rendering/RenderBlockLineLayout.cpp:1654:  Should have only a single space after a punctuation in a comment.  [whitespace/comments] [5]
ERROR: Source/WebCore/rendering/RenderBlockLineLayout.cpp:1663:  Weird number of spaces at line-start.  Are you using a 4-space indent?  [whitespace/indent] [3]
ERROR: Source/WebCore/rendering/RenderBlockLineLayout.cpp:2165:  Should have only a single space after a punctuation in a comment.  [whitespace/comments] [5]
ERROR: Source/WebCore/rendering/RenderBlockLineLayout.cpp:2185:  More than one command on the same line in for  [whitespace/parens] [4]
ERROR: Source/WebCore/rendering/RenderBlockLineLayout.cpp:2191:  Multi line control clauses should use braces.  [whitespace/braces] [4]
ERROR: Source/WebCore/rendering/RenderBlockLineLayout.cpp:2193:  When wrapping a line, only indent 4 spaces.  [whitespace/indent] [3]
ERROR: Source/WebCore/rendering/RenderBlockFlow.cpp:1015:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 8 in 19 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 3 Dave Hyatt 2015-09-14 15:27:26 PDT
Created attachment 261140 [details]
Patch
Comment 4 WebKit Commit Bot 2015-09-14 15:31:09 PDT
Attachment 261140 [details] did not pass style-queue:


ERROR: Source/WebCore/rendering/RenderBlockFlow.cpp:1015:  Multi line control clauses should use braces.  [whitespace/braces] [4]
Total errors found: 1 in 19 files


If any of these errors are false positives, please file a bug against check-webkit-style.
Comment 5 Build Bot 2015-09-14 16:20:41 PDT
Comment on attachment 261140 [details]
Patch

Attachment 261140 [details] did not pass mac-ews (mac):
Output: http://webkit-queues.webkit.org/results/171467

Number of test failures exceeded the failure limit.
Comment 6 Build Bot 2015-09-14 16:20:47 PDT
Created attachment 261149 [details]
Archive of layout-test-results from ews103 for mac-mavericks

The attached test failures were seen while running run-webkit-tests on the mac-ews.
Bot: ews103  Port: mac-mavericks  Platform: Mac OS X 10.9.5
Comment 7 Build Bot 2015-09-14 16:28:58 PDT
Comment on attachment 261140 [details]
Patch

Attachment 261140 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.webkit.org/results/171490

Number of test failures exceeded the failure limit.
Comment 8 Build Bot 2015-09-14 16:29:01 PDT
Created attachment 261150 [details]
Archive of layout-test-results from ews106 for mac-mavericks-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: ews106  Port: mac-mavericks-wk2  Platform: Mac OS X 10.9.5
Comment 9 Dave Hyatt 2015-09-14 17:31:54 PDT
Created attachment 261155 [details]
Patch
Comment 10 Dave Hyatt 2015-09-15 09:21:46 PDT
Created attachment 261195 [details]
Patch
Comment 11 zalan 2015-09-15 10:39:22 PDT
Comment on attachment 261195 [details]
Patch

View in context: https://bugs.webkit.org/attachment.cgi?id=261195&action=review

> Source/WebCore/rendering/line/LineLayoutState.h:125
> +    RenderBlockFlow::MarginInfo& marginInfo() { return m_marginInfo; }
> +    LayoutUnit& prevFloatBottomFromAnonymousInlineBlock() { return m_prevFloatBottomFromAnonymousInlineBlock; }
> +    LayoutUnit& maxFloatBottomFromAnonymousInlineBlock() { return m_maxFloatBottomFromAnonymousInlineBlock; }

I wish there was a better (more explicit) way to do this.
Comment 12 Dave Hyatt 2015-09-15 11:38:41 PDT
Landed in r189817.