Summary: | [Transforms] redrawing turds when transforming element with abs. pos child | ||||||||
---|---|---|---|---|---|---|---|---|---|
Product: | WebKit | Reporter: | Simon Fraser (smfr) <simon.fraser> | ||||||
Component: | Layout and Rendering | Assignee: | Simon Fraser (smfr) <simon.fraser> | ||||||
Status: | RESOLVED FIXED | ||||||||
Severity: | Normal | CC: | hyatt | ||||||
Priority: | P2 | ||||||||
Version: | 528+ (Nightly build) | ||||||||
Hardware: | Mac | ||||||||
OS: | OS X 10.5 | ||||||||
Attachments: |
|
Description
Simon Fraser (smfr)
2008-11-12 12:40:30 PST
Created attachment 25101 [details]
Testcase
The issue here is that RenderObject::repaintAfterLayoutIfNeeded() falls into the "just redraw the deltas" codepath when redrawing the abs. positioned gray bar. Created attachment 25109 [details]
Patch, testcase, changelog
Comment on attachment 25109 [details] Patch, testcase, changelog > + #box { > + position: relative; > + margin: 50px; > + width: 200px; > + height: 200px; > + border: 2px solid black; > + -webkit-transform: rotate(0deg); > + > + } Tiny indentation problem here. > + Finally, fix a bug in RenderBox::localToAbsoluteQuad() which was getting > + borderTopExtra() from the object, rather than its container (as localToAbsolute() > + does). Do you have a test for this? r=me > Do you have a test for this?
It was exposed by LayoutTests/fast/dynamic/subtree-table-cell-height.html, so is covered.
Committed r38353 M WebCore/rendering/RenderFlexibleBox.cpp M WebCore/rendering/RenderObject.cpp M WebCore/rendering/RenderSVGContainer.cpp M WebCore/rendering/RenderSVGViewportContainer.cpp M WebCore/rendering/RenderObject.h M WebCore/rendering/RenderLayer.cpp M WebCore/rendering/RenderForeignObject.cpp M WebCore/rendering/RenderPath.cpp M WebCore/rendering/RenderBox.cpp M WebCore/rendering/RenderBlock.cpp M WebCore/rendering/RenderTable.cpp M WebCore/rendering/RenderSVGImage.cpp M WebCore/rendering/RenderSVGText.cpp M WebCore/rendering/RenderReplaced.cpp M WebCore/rendering/RenderSVGRoot.cpp M WebCore/ChangeLog A LayoutTests/platform/mac/fast/repaint/transform-absolute-child-expected.png A LayoutTests/platform/mac/fast/repaint/transform-absolute-child-expected.txt A LayoutTests/platform/mac/fast/repaint/transform-absolute-child-expected.checksum M LayoutTests/ChangeLog A LayoutTests/fast/repaint/transform-absolute-child.html r38353 = d12c84b463bdb934ab22f7931948b30951f4e310 (trunk) |