[webkit-reviews] review denied: [Bug 124260] Add a new mode where fixed elements don't constrain their positions during a rubber band : [Attachment 216766] Patch
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Wed Nov 13 12:10:20 PST 2013
Simon Fraser (smfr) <simon.fraser at apple.com> has denied Beth Dakin
<bdakin at apple.com>'s request for review:
Bug 124260: Add a new mode where fixed elements don't constrain their positions
during a rubber band
https://bugs.webkit.org/show_bug.cgi?id=124260
Attachment 216766: Patch
https://bugs.webkit.org/attachment.cgi?id=216766&action=review
------- Additional Comments from Simon Fraser (smfr) <simon.fraser at apple.com>
View in context: https://bugs.webkit.org/attachment.cgi?id=216766&action=review
>> Source/WebCore/page/FrameView.cpp:1546
>> +IntSize FrameView::scrollOffsetForFixedPosition(const IntRect&
visibleContentRect, const IntSize& totalContentsSize, const IntPoint&
scrollPosition, const IntPoint& scrollOrigin, float frameScaleFactor, bool
fixedElementsLayoutRelativeToFrame, bool shouldConstrainPosition, int
headerHeight, int footerHeight)
>
> Wonder if we should enumify shouldConstrainPosition. The arguments to this
function are getting out of hand, too :(
I think we should.
> Source/WebCore/page/FrameView.cpp:1569
> + shouldConstrainPosition =
!renderView->compositor().mainFrameBackingIsTiledWithMargin();
I'd expect this to check
frameViewShouldConstrainScrollPositionForFixedElements() or maybe a Setting,
rather than tiggering off mainFrameBackingIsTiledWithMargin, which seems more
like a consequence of the behavior rather than the main trigger.
> Source/WebCore/page/scrolling/ScrollingCoordinator.h:172
> + bool frameViewShouldConstrainScrollPositionForFixedElements(FrameView*);
const?
> Source/WebCore/page/scrolling/ScrollingStateScrollingNode.h:114
> + bool shouldConstrainScrollPositionForFixedElements() const { return
m_shouldConstrainScrollPositionForFixedElements; }
> + void setShouldConstrainScrollPositionForFixedElements(bool);
This is a bit of a mouthful. How about "fixedElementsMoveOnRubberband()" or
something.
> Source/WebCore/rendering/RenderLayerCompositor.cpp:2522
> +bool RenderLayerCompositor::mainFrameBackingIsTiledWithMargin() const
> +{
> + // FIXME: Implement. https://bugs.webkit.org/show_bug.cgi?id=124216
> + return false;
> +}
Not sure it's right for RenderLayerCompositor to be the "owner" of the
behavior. Seems like a ScrollView/FrameView thing, initialized from a Setting.
More information about the webkit-reviews
mailing list