Bug 92497 - [CSS Regions] Region overset property is not properly computed when there is a region break
Summary: [CSS Regions] Region overset property is not properly computed when there is ...
Status: RESOLVED FIXED
Alias: None
Product: WebKit
Classification: Unclassified
Component: Layout and Rendering (show other bugs)
Version: 528+ (Nightly build)
Hardware: Unspecified Unspecified
: P2 Normal
Assignee: Mihai Maerean
URL:
Keywords: AdobeTracked
Depends on:
Blocks: 57312 104944
  Show dependency treegraph
 
Reported: 2012-07-27 05:56 PDT by Andrei Onea
Modified: 2013-02-28 02:17 PST (History)
7 users (show)

See Also:


Attachments
repro case for bug (678 bytes, text/html)
2012-07-27 05:56 PDT, Andrei Onea
no flags Details
visually more intuitive test (1.40 KB, text/html)
2013-02-20 06:32 PST, Mihai Maerean
no flags Details
patch (11.21 KB, patch)
2013-02-26 09:31 PST, Mihai Maerean
hyatt: review+
Details | Formatted Diff | Diff
Incorporated Dave Hyatt's feedback to add a test of columns. (13.59 KB, patch)
2013-02-27 05:41 PST, Mihai Maerean
no flags Details | Formatted Diff | Diff
Incorporated Dave Hyatt's feedback to add a test of columns. Also Reviewed by David Hyatt in ChangeLogs. (13.59 KB, patch)
2013-02-27 06:08 PST, Mihai Maerean
no flags Details | Formatted Diff | Diff
Incorporated Dave Hyatt's feedback to add a test of columns. Indent using spaces instead of tabs in the html files. (14.79 KB, patch)
2013-02-27 06:26 PST, Mihai Maerean
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 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>