Promoted subtree


Purpose: As timing containers are defined according to the outermost SVG document fragment, this case tests when a nested <svg> element is removed and added as the outermost svg fragment, that is, promoted.

Operation: There is one animation containing two circles that move to the right. The second circle is contained in a nested <svg> element. After 1.5s this element is removed from the outer <svg> element and then appended to the parent <p> element.

Expected results: The two circles move right in unison. After they reach about the half-way point a new document appears with the second circle. The two circles continue moving at the same rate.

It is not entirely clear what the offset of the second circle should be after the split. From an intuitive point of view we might expect it to retain its offset, i.e. the second circle begins moving the the middle of the second box. However, in this case a new SMIL time container has effectively been created and so we might also expect that the circle restarts its animation and begins moving from the left side of the second box. This is the behaviour of Opera 9.62 and the behaviour that we have currently implemented for Firefox.