[webkit-qt] Inconsistent acceleration of linear gradients and atlas maps

Ariya Hidayat ariya.hidayat at gmail.com
Sun Jul 18 14:37:54 PDT 2010


The reduced test case
(https://bugs.webkit.org/attachment.cgi?id=61369) is a good simplified
test and would have easily reduced (no pun intented) everyone's time.

Having said that, unfortunately I can't see how drawPattern (as
evidenced in the KCacheGrind capture) can be invoked using the said
test case.

Here is the code path that I found:

GraphicsContext::drawTiledImage(Image* image, ColorSpace
styleColorSpace, const IntRect& rect, const IntPoint& srcPoint, const
IntSize& tileSize, CompositeOperator op, bool useLowQualityScale)
Image::drawTiled(GraphicsContext* ctxt, const FloatRect& destRect,
const FloatPoint& srcPoint, const FloatSize& scaledTileSize,
ColorSpace styleColorSpace, CompositeOperator op)
BitmapImage::draw(GraphicsContext* ctxt, const FloatRect& dst, const
FloatRect& src, ColorSpace styleColorSpace, CompositeOperator op)
QPainter::drawPixmap(const QRect &targetRect, const QPixmap &pixmap,
const QRect &sourceRect)

In short, everything falls back to a simple pixmap drawing.

Maybe this is not a valid and representative reduced test case?



-- 
Ariya Hidayat
http://www.linkedin.com/in/ariyahidayat


More information about the webkit-qt mailing list