[Webkit-unassigned] [Bug 108897] [Cairo] Canvas-shadow behavior is not being as expected
bugzilla-daemon at webkit.org
bugzilla-daemon at webkit.org
Tue Apr 9 23:20:44 PDT 2013
https://bugs.webkit.org/show_bug.cgi?id=108897
--- Comment #29 from Rashmi Shyamasundar <rashmi.s2 at samsung.com> 2013-04-09 23:18:58 PST ---
Root cause for the issue :-
Correcting the statement I made in comment - https://bugs.webkit.org/show_bug.cgi?id=108897#c23
The root cause for this issue lies in step #3, and not step#2. (Please refer https://bugs.webkit.org/show_bug.cgi?id=108897#c23 for the steps involved in drawing a shadow).
step #3: Copy the shadow-context to the original canvas-context.
This copy is achieved through the below sequence of functions :-
3a. In the funciton ShadowBlur::endShadowLayer(), context->drawImageBuffer() is called in order to copy the image from shadowContext to the original graphics context.
3b. GraphicsContext::drawImageBuffer() in turn calls ImageBuffer::draw() which in turn calls GraphicsContext::drawImage(), which in turn calls BitmapImage::draw(), which in turn calls PlatformContextCairo::drawSurfaceToContext().
3c. In the function PlatformContextCairo::drawSurfaceToContext(), a pattern is created from the source surface and the destination context is filled with this pattern.
In the step #3c, since we have created a surface pattern and not a gradient pattern, the extend mode for filling the pattern should be CAIRO_EXTEND_NONE and not CAIRO_EXTEND_PAD.
--
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