Bug 95772

Summary: CSS 2.1 failure: floats-149 fails
Product: WebKit Reporter: Robert Hogan <robert>
Component: CSSAssignee: Robert Hogan <robert>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, eric, hyatt, ojan.autocc, rniwa, robert, webkit.review.bot
Priority: P2    
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
URL: http://test.csswg.org/suites/css2.1/nightly-unstable/html4/floats-149.htm
Bug Depends on:    
Bug Blocks: 31397    
Attachments:
Description Flags
Patch
none
Patch hyatt: review+, buildbot: commit-queue-

Description Robert Hogan 2012-09-04 12:39:31 PDT
Should the RenderInline expand to enclose the float? It currently gets a zero height - which is why the RenderBlock parent gets a zero height.
Comment 1 Dave Hyatt 2012-09-04 12:58:56 PDT
Just a guess but:


static bool alwaysRequiresLineBox(RenderInline* flow)
{
    // FIXME: Right now, we only allow line boxes for inlines that are truly empty.
    // We need to fix this, though, because at the very least, inlines containing only
    // ignorable whitespace should should also have line boxes.
    return !flow->firstChild() && flow->hasInlineDirectionBordersPaddingOrMargin();
}


I think !flow->firstChild() (the subject of the FIXME) is probably why we're failing this test.

You should replace that with a function that recurs and looks for whether or not you have child content that will force the creation of a line box.
Comment 2 Robert Hogan 2012-09-24 11:09:57 PDT
This test can be at least partly reduced to the fact that the inline div will get a line box in this case:

  <div><div style="display:inline"></div></div>

But not in this:

  <div><div style="display:inline"><span></span></div></div>

FF, Opera and IE create a line box for the latter case. So presumably WebKit should too. But then WebKit would always create a line box for empty lines. Is that what should happen?
Comment 3 Robert Hogan 2013-01-27 07:19:55 PST
Created attachment 184913 [details]
Patch
Comment 4 Build Bot 2013-01-27 07:59:29 PST
Comment on attachment 184913 [details]
Patch

Attachment 184913 [details] did not pass win-ews (win):
Output: http://queues.webkit.org/results/16155267
Comment 5 Build Bot 2013-01-27 10:33:36 PST
Comment on attachment 184913 [details]
Patch

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

New failing tests:
fast/text/international/bidi-ignored-for-first-child-inline.html
Comment 6 Build Bot 2013-01-27 11:07:15 PST
Comment on attachment 184913 [details]
Patch

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

New failing tests:
http/tests/inspector/resource-tree/resource-request-content-while-loading.html
fast/text/international/bidi-ignored-for-first-child-inline.html
Comment 7 Robert Hogan 2013-01-28 11:06:36 PST
Created attachment 185011 [details]
Patch
Comment 8 Build Bot 2013-01-28 16:51:04 PST
Comment on attachment 185011 [details]
Patch

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

New failing tests:
fast/text/international/bidi-ignored-for-first-child-inline.html
Comment 9 Build Bot 2013-01-28 22:58:32 PST
Comment on attachment 185011 [details]
Patch

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

New failing tests:
fast/text/international/bidi-ignored-for-first-child-inline.html
Comment 10 Dave Hyatt 2013-02-04 14:09:32 PST
Comment on attachment 185011 [details]
Patch

r=me
Comment 11 Robert Hogan 2013-02-07 10:50:29 PST
Committed r142152: <http://trac.webkit.org/changeset/142152>