summaryrefslogtreecommitdiffstats
path: root/layout/reftests/svg/smil/syncbase/cycle-recursion-1.svg
blob: cb0411dc274e814a3ba6f23862c8a3086ed141aa (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
<svg xmlns="http://www.w3.org/2000/svg"
     xmlns:xlink="http://www.w3.org/1999/xlink"
     class="reftest-wait"
     onload="
        document.documentElement.pauseAnimations();
        document.documentElement.setCurrentTime(0);
        document.getElementById('c').removeAttribute('dur');
        setTimeAndSnapshot(2, false)">
  <script xlink:href="../smil-util.js" type="text/javascript"/>
  <!--
    At first we have:
    c: 0s-1s
    new -> a: 1s-1.5s
    new -> b: 1s-2s
    new -> c: 0s-1s [end: 2s]

    Then we remove dur on c giving us:
    c: 0s-2s
    change -> a: 2s-2.5s
    change -> b: 2s-3s
    change -> c: 0s-3s
    change -> a: 3s-3.5s [Should break the cycle here]
    change -> b: 3s-4s
    change -> c: 0s-4s
    etc. 

    If we break on the second change notice we should arrive at:
    a: 2s-2.5s
    b: 2s-3s
    c: 0s-3s
   -->
  <rect x="100" y="100" width="100" height="100" fill="red">
    <animate attributeName="y" attributeType="XML" from="0" to="0" id="a"
      begin="c.end" dur="0.5s"/>
    <animate attributeName="fill" attributeType="CSS" id="b"
      values="green; blue"
      begin="a.begin" dur="1s"/>
    <animate attributeName="x" attributeType="XML" id="c"
      from="0" to="100" fill="freeze"
      begin="0" end="b.end" dur="1s"/>
  </rect>
</svg>