Bug 92497

Summary: [CSS Regions] Region overset property is not properly computed when there is a region break
Product: WebKit Reporter: Andrei Onea <andreionea3000>
Component: Layout and RenderingAssignee: Mihai Maerean <mmaerean>
Status: RESOLVED FIXED    
Severity: Normal CC: abucur, donggwan.kim, eric, esprehn+autocc, ojan.autocc, WebkitBugTracker, webkit.review.bot
Priority: P2 Keywords: AdobeTracked
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on:    
Bug Blocks: 104944, 57312    
Attachments:
Description Flags
repro case for bug
none
visually more intuitive test
none
patch
hyatt: review+
Incorporated Dave Hyatt's feedback to add a test of columns.
none
Incorporated Dave Hyatt's feedback to add a test of columns. Also Reviewed by David Hyatt in ChangeLogs.
none
Incorporated Dave Hyatt's feedback to add a test of columns. Indent using spaces instead of tabs in the html files. none

Description Andrei Onea 2012-07-27 05:56:03 PDT
Created attachment 154918 [details]
repro case for bug

In the attached repro case, the content is flowed in only the first region, yet the "regionoverset" property for the regions in the region chain are computed as "overflow", "fit" and "empty". According to the spec: http://www.w3.org/TR/css3-regions/#dom-region-regionoverset , they should be "fit", "empty" and "empty", since content is only flowed in the first region, and the second and third ones have no content flowing inside of them. "overflow" should only be valid for the last region in a region chain, if the content cannot be completely flowed inside it.
Comment 1 Andrei Bucur 2012-12-10 15:51:55 PST
This seems to be related to the way we are handling margins in the context of forced breaks. The CSS Fragmentation spec [1] states:

"When an unforced break occurs between block-level boxes, any margins adjoining the break are truncated. When a forced break occurs there, adjoining margins before the break are truncated, but margins after the break are preserved."

It seems right now we are not truncating the before-break margins at all.

[1] http://dev.w3.org/csswg/css3-break/#break-between
Comment 2 Mihai Maerean 2013-02-20 06:32:56 PST
Created attachment 189306 [details]
visually more intuitive test
Comment 3 Mihai Maerean 2013-02-26 09:31:02 PST
Created attachment 190307 [details]
patch
Comment 4 Dave Hyatt 2013-02-26 09:37:32 PST
Comment on attachment 190307 [details]
patch

r=me, although you should probably consider adding a test of columns and/or printing, since you are affecting their behavior by pulling this code out of the region-specific break check.
Comment 5 Mihai Maerean 2013-02-27 05:41:28 PST
Created attachment 190496 [details]
Incorporated Dave Hyatt's feedback to add a test of columns.
Comment 6 Mihai Maerean 2013-02-27 06:08:43 PST
Created attachment 190501 [details]
Incorporated Dave Hyatt's feedback to add a test of columns. Also Reviewed by David Hyatt in ChangeLogs.
Comment 7 Mihai Maerean 2013-02-27 06:26:27 PST
Created attachment 190508 [details]
Incorporated Dave Hyatt's feedback to add a test of columns. Indent using spaces instead of tabs in the html files.
Comment 8 WebKit Review Bot 2013-02-27 06:52:15 PST
Comment on attachment 190508 [details]
Incorporated Dave Hyatt's feedback to add a test of columns. Indent using spaces instead of tabs in the html files.

Clearing flags on attachment: 190508

Committed r144178: <http://trac.webkit.org/changeset/144178>