Bug 125291 - [CSS Regions] Implement visual overflow computation for inline elements
Summary: [CSS Regions] Implement visual overflow computation for inline elements
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: WebCore Misc. (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Andrei Bucur
URL:
Keywords: AdobeTracked
Depends on:
Blocks: 116295
  Show dependency treegraph
 
Reported: 2013-12-05 02:01 PST by Andrei Bucur
Modified: 2014-01-10 02:34 PST (History)
7 users (show)

See Also:


Attachments
Patch (28.89 KB, patch)
2014-01-08 01:57 PST, Andrei Bucur
no flags Details | Formatted Diff | Diff
Patch (28.88 KB, patch)
2014-01-08 09:06 PST, Andrei Bucur
no flags Details | Formatted Diff | Diff
Patch (30.19 KB, patch)
2014-01-09 01:30 PST, Andrei Bucur
no flags Details | Formatted Diff | Diff

Note You need to log in before you can comment on or make changes to this bug.
Description Andrei Bucur 2013-12-05 02:01:53 PST
Currently only RenderBoxes have visual overflow computed per region. This means inline elements are incorrectly handled.
Comment 1 Andrei Bucur 2014-01-08 01:57:47 PST
Created attachment 220613 [details]
Patch
Comment 2 Mihai Maerean 2014-01-08 05:40:50 PST
Comment on attachment 220613 [details]
Patch

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

> Source/WebCore/rendering/RenderFlowThread.cpp:845
> +    return object->isBox() || object->isRenderInline();

There's a FIXME in RenderFlowThread::regionForCompositedLayer: "remove this when we'll have region ranges for inlines as well"

> Source/WebCore/rendering/RenderRegion.cpp:718
> +    return LayoutRect(); // FIXME: Should ASSERT_NOT_REACHED here?

Why the FIXME comment? Just add the assert.
Comment 3 Andrei Bucur 2014-01-08 08:13:06 PST
(In reply to comment #2)
> (From update of attachment 220613 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=220613&action=review
> 
> > Source/WebCore/rendering/RenderFlowThread.cpp:845
> > +    return object->isBox() || object->isRenderInline();
> 
> There's a FIXME in RenderFlowThread::regionForCompositedLayer: "remove this when we'll have region ranges for inlines as well"

This patch doesn't provide ranges for inline elements (e.g. a div with display: inline-block), but the means to access the visual overflow in regions for more elements (RenderInlines in this case).

> 
> > Source/WebCore/rendering/RenderRegion.cpp:718
> > +    return LayoutRect(); // FIXME: Should ASSERT_NOT_REACHED here?
> 
> Why the FIXME comment? Just add the assert.

Will do.
Comment 4 Andrei Bucur 2014-01-08 09:06:38 PST
Created attachment 220637 [details]
Patch
Comment 5 Mihai Maerean 2014-01-08 09:11:53 PST
Comment on attachment 220637 [details]
Patch

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

> LayoutTests/fast/regions/overflow-in-variable-width-regions-inline.html:39
> +<p>The paragraph inside the regions must be fragmented. Each fragment must be relatively positioned based on the fragment position.</p>

all tests should mention the number of the bug they test.
Comment 6 Andrei Bucur 2014-01-09 01:30:36 PST
Created attachment 220702 [details]
Patch
Comment 7 Dave Hyatt 2014-01-09 10:55:58 PST
Comment on attachment 220702 [details]
Patch

r=me
Comment 8 WebKit Commit Bot 2014-01-10 02:34:18 PST
Comment on attachment 220702 [details]
Patch

Clearing flags on attachment: 220702

Committed r161626: <http://trac.webkit.org/changeset/161626>
Comment 9 WebKit Commit Bot 2014-01-10 02:34:20 PST
All reviewed patches have been landed.  Closing bug.