Re: [web-animations] Some specification issues

Hi Brian,

Please see below.

> Hi Sergey,
>
> Thanks for the feedback. Comments below.
>
> On 2015/02/17 22:28, "Сергей Грехов" wrote:
>> 1) WebIDL for KeyframeEffect
>> (http://w3c.github.io/web-animations/#the-keyframeeffect-interfaces)
>> contains the following
>>
>>      // Mutable additions to KeyframeEffectReadonly interface
>>      inherit attribute DOMString spacing;
>>      void                        setFrames (object frames);
>>
>> I think that spacing attribute is not an addition to
>> KeyframeEffectReadonly interface but rather mutable override of its
>> member
>
> Right, but 'inherit' adds a setter to an attribute while inheriting its
> getter. So I think it's ok?

I think we need to be consistent. The code is the following:

    // Mutable overrides of AnimationEffectReadonly members
    inherit attribute DOMString                   name;
    inherit attribute IterationCompositeOperation iterationComposite;
    inherit attribute CompositeOperation          composite;

    // Mutable additions to KeyframeEffectReadonly interface
    inherit attribute DOMString spacing;

But overriden members of AnimationEffectReadonly (with the setter added)
are named 'overrides' but overriden members of KeyframeEffectReadonly are
named 'additions'

>
>> 2) KeyframeEffectReadonly.clone() returns KeyframeEffect instance. It
>> should return KeyframeEffectReadonly instance. Otherwise this method
>> should be moved to KeyframeEffect interface
>
> KeyframeEffectReadonly.clone() is the means for getting a mutable copy
> of a read-only KeyframeEffectReadonly object (or a KeyframeEffect
> object). So it needs to be on KeyframeEffectReadonly (the
> super-interface) and it needs to return a KeyframeEffect object.
>
> We have the same pattern for AnimationReadonly.clone().


After internal discussion we believe that using the name 'clone' for a
method returning mutable copy is confusing.
The name 'clone' has common meaning: make an exact copy of the object.
This meaning does not require whether the copied object is mutable or not.
It depends on source object. So any user of the method will be confused.
getMutableCopy() or just mutableCopy() is much clearer

>
>> 3) Definition of AnimationTimingReadonly.fill attribute
>> (http://w3c.github.io/web-animations/#dom-animationtimingreadonly-fill)
>> is
>> the following:
>>
>> - If the animation node to which the fill mode is being is applied is an
>> animation,
>> Use none as the fill mode.
>> - Otherwise,
>> Use both as the fill mode.
>>
>> On level 1 we define only one type of animation node - animation. Does
>> it
>> makes sense describe fill behavior for non animation nodes here?
>
> No, it doesn't. I'll fix that.
>
> Thanks,
>
> Brian
>

Received on Wednesday, 18 February 2015 06:30:32 UTC