[Webkit-unassigned] [Bug 63871] [Chromium] canvas/philip/tests/2d.gradient.object.update.html is failed on chromium.

bugzilla-daemon at webkit.org bugzilla-daemon at webkit.org
Mon Jul 11 05:26:22 PDT 2011


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





--- Comment #10 from Hwang <luxtella at company100.net>  2011-07-11 05:26:22 PST ---
I found that we did not need to handle Pattern, because Pattern is mutable only due to Pattern::setPatternSpaceTransform() and setPatternSpaceTransform() already updates platformPattern.

I agree that this patch is too invasive. It is because SkGradientShader is immutable. We have to change platformGradient in GraphicsContext at every time that Gradient is modified. There is two approaches in order to change the platformGradient object.
1. Above approach.
2. Gradient has the callback for updating platformGradient in GraphicsContextSkia.

The second approach will be similar that DrawingBufferChromium uses WillPublishCallback class for managing a PlatformContextSkia object.
However, it will be more complex that a GradientSkia manages GraphicsContextSkia listners than a DrawingBufferChromium manages a PlatformContextSkia because several GraphicsContext objects can share one Gradient object and even one GraphicsContext can use one Gradient twice (i.e. fill and stroke).

I think two approaches are too invasive. It is why I chose the first invasive approach.

Recommend me better idea, please.

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