[webkit-reviews] review denied: [Bug 101779] Accumulate using a LayoutSize in mapLocalToContainer when possible : [Attachment 178596] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Dec 11 12:22:11 PST 2012
Simon Fraser (smfr) <simon.fraser at apple.com> has denied Levi Weintraub
<leviw at chromium.org>'s request for review:
Bug 101779: Accumulate using a LayoutSize in mapLocalToContainer when possible
https://bugs.webkit.org/show_bug.cgi?id=101779
Attachment 178596: Patch
https://bugs.webkit.org/attachment.cgi?id=178596&action=review
------- Additional Comments from Simon Fraser (smfr) <simon.fraser at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=178596&action=review
Why aren't the pixel results using mock scrollbars?
It's very hard for me to tell whether this patch is correct. I'd feel more
confident if you had a bunch of tests that hit assertions with the wrong
version of the patch, but no longer do so. r- for the apparently incorrect
flattening.
> Source/WebCore/ChangeLog:42
> + (WebCore::RenderObject::mapLocalToContainer): Broke
mapLocalToContainer into this public function and
> + mapLocalToContainerInternal. The internal flavors track an
accumulated offset which is used to recreate the pixel
> + snapping that's performed during paint. This public function calls
the internal one, then applies any leftover
> + accumulated offset before returning the TransformState to the
caller.
mapLocalToContainer was already the "internal" method. I agree with Julian that
some renaming might help.
> Source/WebCore/rendering/RenderBox.cpp:1425
> + applyAccumulatedOffset(transformState, accumulatedOffset, mode);
applyAccumulatedOffset() is flattening here, since the default last param is
'false'. How can that be correct?
> Source/WebCore/rendering/RenderBox.cpp:1429
> - transformState.move(containerOffset.width(),
containerOffset.height(), preserve3D ? TransformState::AccumulateTransform :
TransformState::FlattenTransform);
> + accumulatedOffset.expand(containerOffset);
So it seems like you're carrying along all of the non-transform offsets in
accumulatedOffset, which kinda defeats the purpose of TransformState. This
seems like a cop-out.
More information about the webkit-reviews
mailing list