[Webkit-unassigned] [Bug 102000] [EFL][WK2] White flicker when scrolling big pages with dark background on slower hardware.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Tue Nov 13 15:45:27 PST 2012


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





--- Comment #18 from Viatcheslav Ostapenko <ostap73 at gmail.com>  2012-11-13 15:47:10 PST ---
(In reply to comment #17)
> (From update of attachment 173936 [details])
> View in context: https://bugs.webkit.org/attachment.cgi?id=173936&action=review
> 
> > Source/WebKit2/WebProcess/WebPage/WebPage.cpp:2776
> > +    if (m_drawingArea && m_drawingArea->layerTreeHost()) {
> > +        double red, green, blue, alpha;
> > +        m_mainFrame->getDocumentBackgroundColor(&red, &green, &blue, &alpha);
> > +        RGBA32 rgba = makeRGBA32FromFloats(red, green, blue, alpha);
> > +        if (m_backgroundColor.rgb() != rgba) {
> > +            m_backgroundColor.setRGB(rgba);
> > +            m_drawingArea->layerTreeHost()->setBackgroundColor(m_backgroundColor);
> > +        }
> > +    }
> 
> This should be guarded with ACCELERATED_COMPOSITING, or alternatively it should move to a DrawingArea[Proxy] message set rather than go via coordinated graphics.
> I'm ok with this in general but I'm not comfortable r+ing it because I'm not sure of the implication of calling getDocumentBackgroundColor after every layout.

It composed of 2 color values requested from style of body and html elements and one color (baseBackgroundColor) stored in a FrameView. Getting those values from style does invoke any search or tree traverse, but just get color values stored in style itself. Those style functions are called a lot from different places.
Also, it seems been called already on every layout for overlay scrollbars style calculations (FrameView::recalculateScrollbarOverlayStyle()) and from RenderLayerCompositor.
IMHO, it would be good to make caching of this value at least to avoid re-calculation if there was no layout (in a separate patch?). But it has to be recalculated after every layout.

> I'm OK with the changes to TextureMapper, if you want to post them in a separate patch.

Ok, I'll put it to the separate patch.

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