[Webkit-unassigned] [Bug 66969] Chromium: Add a layer for rubber-band overhang painting to the hardware path.
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Mon Aug 29 14:01:14 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=66969
--- Comment #3 from asvitkine at chromium.org 2011-08-29 14:01:14 PST ---
(In reply to comment #2)
> (From update of attachment 105229 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=105229&action=review
>
> Despite being titled as such, this doesn't look like a Chromium-specific patch. I think you are going to either need to add some sort of setting for this or otherwise make it conditional.
>
> Does rubber-banding work out of the box on other hardware accelerated ports?
>
> > Source/WebCore/platform/ScrollView.cpp:1037
> > +#if USE(ACCELERATED_COMPOSITING)
> > + if (!layerForScrollCorner())
> > + calculateAndPaintOverhangAreas(context, rect);
>
> Why do you need the scroll corner layer check here?
That was meant to be:
> > + if (!layerForOverhangAreas())
> > + calculateAndPaintOverhangAreas(context, rect);
So that it's only called in the software path.
>
> > Source/WebCore/rendering/RenderLayerCompositor.cpp:960
> > + m_layerForOverhangAreas->setSize(frameView->frameRect().size());
>
> Maybe I misunderstand how these layers are supposed to work, but I would expect overhang layers to be related to the size and position of horizontalOverhangRect and verticalOverhangRect.
If I did it that way, then two layers would be required, which would be more boilerplate. Instead, I decided to go with one layer that covers the size of web content area.
The other advantage of having a single layer is that we can do it with a single paintOverhangAreas() like the existing software path, rather than calling it twice (clipped to each rect) or refactoring the code to have paintHorizontalOverhang(), paintVerticalOverhang() and paintOverhangCorner().
--
Configure bugmail: https://bugs.webkit.org/userprefs.cgi?tab=email
------- You are receiving this mail because: -------
You are the assignee for the bug.
More information about the webkit-unassigned
mailing list