[Webkit-unassigned] [Bug 71385] Threaded compositor should delegate overflow div/iframe scroll events to WebKit

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Nov 29 12:47:29 PST 2011


https://bugs.webkit.org/show_bug.cgi?id=71385





--- Comment #12 from Simon Fraser (smfr) <simon.fraser at apple.com>  2011-11-29 12:47:29 PST ---
(In reply to comment #11)
> (In reply to comment #9)
> > (From update of attachment 116256 [details] [details])
> > View in context: https://bugs.webkit.org/attachment.cgi?id=116256&action=review
> > 
> > > Source/WebCore/platform/graphics/GraphicsLayer.h:307
> > > +    // Set coordinates of scrollable elements inside the layer. These are given
> > > +    // in scaled document coordinates.
> > > +    const Vector<IntRect>& scrollableRects() const { return m_scrollableRects; }
> > > +    virtual void setScrollableRects(const Vector<IntRect>& r) { m_scrollableRects = r; }
> > 
> > It's not clear what "scrollable rects" are for. Why aren't the child scrollable things in their own GraphicsLayers?
> 
> Scrollable rectangles inside a layer signify areas where the chromium compositor thread should not attempt to process scroll events by itself (by translating the layer coordinates), but instead it should forward those events to the WebKit thread. These areas are created for things like iframes and elements with overflow scrolling which do not have a RenderLayerBacking of their own.

This sounds like information that should be kept in the chromium layer, not pushed down to GraphicsLayer.

> It sounds like it would be better instead to create GraphicsLayers for those elements but still render the elements themselves into the same enclosing layer as before. That is, the GraphicsLayers would only serve as blank placeholders for compositor hit testing. Is this closer to what you had in mind?

No. I don't want to deviate from a GraphicsLayer representing some kind of composited surface. It sounds like Chromium's scrolling needs are pretty platform-specific, so you should keep them in the Chromium layer.

-- 
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