Bug 117259

Summary: [CSS Regions] When changing flow-from/flow-into on :hover, elements overflowing the region are not correctly repainted
Product: WebKit Reporter: Radu Stavila <stavila>
Component: CSSAssignee: Radu Stavila <stavila>
Status: RESOLVED FIXED    
Severity: Normal CC: buildbot, commit-queue, esprehn+autocc, glenn, koivisto, kondapallykalyan, mibalan, mvujovic, rniwa, stavila, WebkitBugTracker
Priority: P2 Keywords: AdobeTracked
Version: 528+ (Nightly build)   
Hardware: Unspecified   
OS: Unspecified   
Bug Depends on: 7555, 111585    
Bug Blocks: 116295    
Attachments:
Description Flags
HTML showing the problem
none
Patch
none
Simpler approach
koivisto: review+, buildbot: commit-queue-
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2
none
Patch fixing failing newmulticol test none

Description Radu Stavila 2013-06-05 09:40:26 PDT
Created attachment 203862 [details]
HTML showing the problem

If an element is flowed into a region and it overflows the region, upon changing the region's flow-from to "none" in the :hover style would fail to repaint the portion of the element that was outside of the region. See attached test case.
Comment 1 Michelangelo De Simone 2013-06-13 10:12:53 PDT
Still repros on today's nightly (r151543)
Comment 2 Max Vujovic 2013-06-13 13:55:24 PDT
Changing this bug to block the CSS Regions master bug, not the other way around.
Comment 3 Radu Stavila 2013-12-19 04:33:59 PST
Created attachment 219639 [details]
Patch
Comment 4 Antti Koivisto 2013-12-19 05:29:03 PST
Comment on attachment 219639 [details]
Patch

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

> Source/WebCore/rendering/RenderRegion.cpp:746
> +        rect.moveBy(baseRect.location());
> +        rect.unite(baseRect);

This pair doesn't look correct. How are rect and baseRect in the same coordinate system in unite()?
Comment 5 Antti Koivisto 2013-12-19 05:36:56 PST
baseRect is obtained with RenderBlockFlow::clippedOverflowRectForRepaint which at least in theory can have a location that differs from the box location.
Comment 6 Radu Stavila 2013-12-19 06:06:56 PST
Created attachment 219643 [details]
Simpler approach
Comment 7 Build Bot 2013-12-19 09:08:58 PST
Comment on attachment 219643 [details]
Simpler approach

Attachment 219643 [details] did not pass mac-wk2-ews (mac-wk2):
Output: http://webkit-queues.appspot.com/results/48758024

New failing tests:
fast/multicol/newmulticol/column-rules-fixed-height.html
Comment 8 Build Bot 2013-12-19 09:09:05 PST
Created attachment 219654 [details]
Archive of layout-test-results from webkit-ews-11 for mac-mountainlion-wk2

The attached test failures were seen while running run-webkit-tests on the mac-wk2-ews.
Bot: webkit-ews-11  Port: mac-mountainlion-wk2  Platform: Mac OS X 10.8.5
Comment 9 Radu Stavila 2013-12-20 02:24:47 PST
Created attachment 219744 [details]
Patch fixing failing newmulticol test
Comment 10 WebKit Commit Bot 2013-12-20 05:41:26 PST
Comment on attachment 219744 [details]
Patch fixing failing newmulticol test

Clearing flags on attachment: 219744

Committed r160905: <http://trac.webkit.org/changeset/160905>
Comment 11 WebKit Commit Bot 2013-12-20 05:41:29 PST
All reviewed patches have been landed.  Closing bug.