[Webkit-unassigned] [Bug 50422] [Qt] No shadow offset should be affected by any transformation

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Sat Dec 11 23:28:48 PST 2010


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





--- Comment #14 from Ariya Hidayat <ariya.hidayat at gmail.com>  2010-12-11 23:28:48 PST ---
(From update of attachment 76155)
View in context: https://bugs.webkit.org/attachment.cgi?id=76155&action=review

> LayoutTests/ChangeLog:5
> +        [Qt] No shadow offset should be affected by any transformation

I suggest simplifying this to "Canvas shadow offset should not be affected..." (and the bug title as well)

> LayoutTests/fast/canvas/canvas-transforms-fillRect-shadow-expected.txt:1
> +Ensure correct behavior of canvas with fillRect+shadow after translation+rotation+scaling. A blue and red checkered pattern should be displayed.

Isn't the box solid and not patterned?

> WebCore/platform/graphics/ContextShadow.cpp:159
> +    int inflation = 0;

Is it possible to make this 'float' instead? Beside removing confusion (enlarging float rect with int), we are prepared for possible further enhancement when the blur function supports non-integer blur radius.

> WebCore/platform/graphics/qt/ContextShadowQt.cpp:140
> +    // Set the origin as the top left corner of the scratch image.
> +    if (p->transform().isIdentity()) {
> +        m_layerContext->translate(offset());
> +        m_layerContext->translate(-layerRect.x(), -layerRect.y());
> +    } else {
> +        const int frameSize = (m_sourceRect.width() - layerArea.width()) / 2;
> +        m_layerContext->translate(-layerArea.x() + frameSize, -layerArea.y() + frameSize);
> +    }

Can we get away with the specialization of the identity transform? I can't see why it's different.

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