Commit Graph

4 Commits

Author SHA1 Message Date
Florian Quèze
85611a7b6d Bug 1331081 - script generated patch to omit addEventListener/removeEventListener's third parameter when it's false, r=jaws.
--HG--
extra : rebase_source : a22344ee1569f58f1f0a01017bfe0d46a6a14602
2017-01-17 11:50:25 +01:00
Mantaroh Yoshinaga
90c5d3d372 Bug 1202333 part 1 - Remove excessive animationiteration event. r=birtles
The Firefox fired excessive animationiteration event.
But We fixed specification in order to prevent firing the animationiteration when animation is start.

For detail, See https://github.com/w3c/csswg-drafts/issues/68

MozReview-Commit-ID: 391DRxSpq86

--HG--
extra : rebase_source : 38e6710da4d9ad7422d6313eeae2803402a51b24
2016-12-20 15:57:13 +09:00
L. David Baron
2122830122 Bug 1176969 followup - Reorganize the timing of the reftest to make it more reliable.
I confirmed that animate-preserve3d-child.html still fails without the
original patch in the bug.

--HG--
extra : transplant_source : %2Bqq%E3%28f%BC%CF%E0%02%205.%14V%ABX%F1%87%1B
2015-07-01 23:00:25 -07:00
L. David Baron
38a633181f Bug 1176969 - Disable OMT animation for any frame in a preserve-3d scene rather than only frames whose parent and child are in a preserve-3d scene. r=mattwoodrow
frame->Preserves3D() is whether the frame's parent has transform-style:
preserve-3d, which means that the frame is part of the same 3-D scene as
its parent.  frame->Preserves3DChildren() is whether the frame itself
has transform-style: preserve-3d, which means that the frame is part of
the same 3-D scene as its children.

Neither of these are valid cases for doing off-main-thread (OMT)
animation because all of the layers in a preserve-3d scene are currently
siblings of each other, rather than preserving ancestor/descendant
relationships.  This means that it's not valid to animate transform of
the parent on the compositor because the compositor animation won't
update any of its children that have layers.  Likewise, it's not valid
to animate transform of the child on the compositor because the code
that sends transform information to the compositor doesn't handle the
accumulation of transforms needed to get the "right" transform for the
child (i.e., with the transforms of its ancestors up to the top of the
3-D scene merged in).

This means that we do OMT animation for slightly fewer cases with the
patch than we did without the patch.  This means it's pretty low risk in
terms of correctness, although there's a chance it might regress
performance on one of the (somewhat limited) set of cases where the
optimization was valid.  (Bug 779598 covers doing OMT animation for
preserve-3d cases, and depends on the work ongoing in bug 1097464.)

The animate-preserve3d-parent.html reftest doesn't fail without the
patch, since something seems to invalidate in the test; it was testing
the testcase that showed correct behavior when the mouse was moving, so
this isn't incredibly surprising (although that invalidation from mouse
movement is itself worth debugging).  The animate-preserve3d-child.html
test does fail without the patch, though.

(With an initial transform of none instead of the 30deg transform, both
tests also show an invalidation bug without the patch.)
2015-06-30 11:29:55 -07:00