[Webkit-unassigned] [Bug 56929] [Qt] Tiled painting still causes synchronous layout when accelerated compositing and texture mapper are enabled
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Fri Mar 25 10:10:31 PDT 2011
https://bugs.webkit.org/show_bug.cgi?id=56929
--- Comment #6 from Carol Szabo <carol.szabo at nokia.com> 2011-03-25 10:10:32 PST ---
(In reply to comment #4)
> (From update of attachment 86696 [details])
> > + renderFrameWidgets(context, (QWebFrame::RenderLayer)(QWebFrame::ScrollBarLayer | QWebFrame::PanIconLayer), clip);
> Maybe change the signature to use QFlags and avoid the ugly cast?
I would gladly do that, but I would like to do that on renderRelativeCoords as well in this case. Shouldn't I?
> > Source/WebKit/qt/Api/qwebframe.cpp:391
> > +void QWebFramePrivate::renderFrameWidgets(GraphicsContext* context, QWebFrame::RenderLayer layer, QRegion clip)
> I think the name Widgets is missleading here because of the PanIconLayer (and someone could think page's widgets are rendered here).
> What about:
> ::renderFrameOverlayLayers()
I thought about OverlayLayers, but I found it more confusing since it might refer to content overlay layers.
> or simply ::renderFrameScollbarAndPanIconLayer() :)
I considered this name as well, but I thought it is too long and too specific, other things such as title bar, title bar buttons, or who knows what might be included.
I also considered renderFrameDecorations and renderFrameControls but that may be confusing as well.
What do you think about renderFrameExtras / renderFrameVisuals ?
> > Source/WebKit/qt/Api/qwebframe.cpp:394
> > + if (!layer & (QWebFrame::PanIconLayer | QWebFrame::ScrollBarLayer))
> > + return;
> This could be an assertion instead of a runtime check.
This is a runtime check copied from renderRelativeCoords. It cannot simply be turned into an ASSERT as renderRelativeCoords can cause false assertions. I moved it here since I considered that the robustness added by it overweighs its low cost. I figured that most callers would have to do the test anyway so I save some memory by putting it here, rather then to do the check before every call. If you want I can totally remove the check in which case I uselessly walk through the rects of the region painting nothing if the function is called with neither of the interesting layers specified, or I can move the test to renderRelativeCoords and put an ASSERT in the function.
> If someone call the method with layer == Content, he clearly made a mistake and should be notified. In QWebFramePrivate::renderRelativeCoords(), you would mask the layer to get the right flags and make the call explicit.
I do not understand the last sentence above.
--
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