> > > Unfortunately I was unable to make a shared keyframe list since as was > discussed at one stage.[3] This is because keyframe lists return their > computed offsets but for paced keyframe lists, the computed offset may > depend on their target element in order to resolve percentage values, > for example. This is problem exists with the API regardless of this > change so we can address it subsequently (e.g. by making the computed > keyframe list getter take a target element). >
I am very concerned by this. Our implementation demonstrates that parsing of keyframe lists is a major cost, possibly the largest cost involved in setting up animations. Sharing keyframe lists where possible would be a major benefit. Furthermore, keyframe lists should only deal with specified lists - the problem you're describing doesn't need to exist as accessors on a KeyframeList should return the unmodified inputs. It's fine to keep a getFrames method on the KeyframeEffect object for accessing the computed result (in a place where the target is known) - although I think this could be deferred to a later level as we don't have currently have strong use cases for it. Sincerely, -Shane Stephens