Bug 12432

Summary: SVG animations are notified for updates way too often
Product: WebKit Reporter: Eric Seidel (no email) <eric>
Component: SVGAssignee: Nobody <webkit-unassigned>
Status: NEW ---    
Severity: Normal CC: zimmermann
Priority: P2    
Version: 420+   
Hardware: Mac   
OS: OS X 10.4   
Bug Depends on:    
Bug Blocks: 41761    

Description Eric Seidel (no email) 2007-01-27 03:13:06 PST
Animations are notified for updates way too often

right now animations are notified to update (and thus normally cause a redraw) 30x per second, or something similar *even* if they have nothing to do.

We need to fix the animation notification system to be much smarter.  Animations should be able to register for the next callback at a specific time.  The scheduler could then be smart enough to schedule the timer for the minimum of all of these.  Or each animation could carry a "update after" date, and only mark it self as needing update when the time passes that date (unless manually invalidated for other reasons (like applying to an element which needs to update sooner, etc.)
Comment 1 Nikolas Zimmermann 2012-05-04 07:47:01 PDT
This partly works in trunk, but we still have issues. We're basically calling targetElement->svgAttributeChanged(attributeName) for XML animations, and setNeedsStyleRecalc() for CSS prop animations, regardless of whether the animation contributes to the currently animated value or not, causing lots of unnecessary work being done.