[Chromium] Animation updates fail when using a canvas as a CSS backround-image style...
authorjunov@google.com <junov@google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 30 Nov 2012 21:11:31 +0000 (21:11 +0000)
committerjunov@google.com <junov@google.com@268f45cc-cd09-0410-ab3c-d52691b4dbfc>
Fri, 30 Nov 2012 21:11:31 +0000 (21:11 +0000)
commit8c9213189adf89867bdce76246e4d67dc16fc69b
treeedbb88986fda9eb0d587b21aa80cb3809f7e6e76
parent2fd4c7d1c7c4d657a8a6d8f102216ded117de105
[Chromium] Animation updates fail when using a canvas as a CSS backround-image style with -webkit-canvas
https://bugs.webkit.org/show_bug.cgi?id=103643

Reviewed by Stephen White.

.:

New test to verify that elements using a canvas as a style image
source are redrawn when the canvas is animated.  Added as a manual test
because the bug was not reproducible in DumpRenderTree.

* ManualTests/animated-canvas-as-background.html: Added.

Source/WebCore:

CanvasRenderingContext2D::didDraw was not propagating the change
notification to observers in the accelerated compositing case.
Problem fixed by adding observer notifications.

New manual test: animated-canvas-as-background.html

* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::didDraw):
The observer notification was factored out into a separate method
so that it can be invoked directly for accelerated compositing.
(WebCore):
(WebCore::HTMLCanvasElement::notifyObserversCanvasChanged):
* html/HTMLCanvasElement.h:
(HTMLCanvasElement):
* html/canvas/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::didDraw):
Added observer notification call to trigger repainting of elements that
use this canvas for their style.

git-svn-id: https://svn.webkit.org/repository/webkit/trunk@136262 268f45cc-cd09-0410-ab3c-d52691b4dbfc
ChangeLog
ManualTests/animated-canvas-as-background.html [new file with mode: 0644]
Source/WebCore/ChangeLog
Source/WebCore/html/HTMLCanvasElement.cpp
Source/WebCore/html/HTMLCanvasElement.h
Source/WebCore/html/canvas/CanvasRenderingContext2D.cpp