Commit Graph

49087 Commits

Author SHA1 Message Date
Brian Birtles
99a1a632e3 Bug 1260572 - Use 50% switch behavior if StyleAnimationValue::Interpolate fails; r=heycam
In KeyframeEffectReadOnly::ComposeStyle we call StyleAnimationValue::Interpolate
but assume that it always passes. That was true when that code was only used for
CSS animations and CSS transitions since they check that their animation values
can be interpolated before setting up segments.

However, when we set up animations using the Web Animations API we don't perform
that check so it is possible for this call to fail.

In that case, we could just bail, but, according to CSS Transitions we should
apply a 50% switch in this case:

  https://drafts.csswg.org/css-transitions/#step-types

(In Web Animations, specifying this is an open issue. See:
https://w3c.github.io/web-animations/#specific-animation-behaviors).

Bug 1064937 tracks doing this in general (we'll likely need to mark various
properties as being no longer unanimatable but instead as supporting discrete
animation) but we can start to introduce it now.

Later in bug 1245748, CSS animations and transitions will likely start using
the same code path as the Web Animations API for setting up keyframes.
As a result, unless we take care to add checks that the values we set are
interpolable, the 50% switch behavior will begin to apply to CSS animations and
transitions too at that point.

Some concerns have been raised about possible web compatibility issues around
the 50% switch behavior (see [1] and [2]). For CSS animations, Chrome already
supports this behavior so it should be ok at least for CSS animations.
When we switch CSS transitions over to the same code path, however, we will need
to be careful to add checks that the transition endpoints are interpolable
(we can investigate introducing this behavior to transitions as a separate bug
that can be easily backed out / preffed off).

Regarding the naming of the test added here, going forward we would like to
restructure the tests under web-platform-tests to better match the structure of
the Web Animations since that seems to be the convention there.

However, this doesn't *quite* match the structure of the spec since there are
upcoming changes to the spec in this area (e.g. renaming animation behaviors to
animation types). However, it should be close enough that we don't have to move
it around too much in future.

[1] https://drafts.csswg.org/css-transitions/#step-types
[2] https://bugzilla.mozilla.org/show_bug.cgi?id=1064937#c0

MozReview-Commit-ID: KcxILrckJg9
2016-03-30 08:59:08 +09:00
Brian Birtles
a9d4b99d8d Bug 1260572 - Replace AnimValuesStyleRule::AddEmptyValue with an overload of AddValue that takes an rvalue reference; r=heycam
In the next patch in this series, we would like to update the error handling of
the call to StyleAnimationValue::Interpolate in
KeyframeEffectReadOnly::ComposeStyle. Using AnimValuesStyleRule::AddEmptyValue
there, however, makes handling the error case difficult because we need a means
of clearing the allocated StyleAnimationValue.

However, simply using AnimationValuesStyleRule::AddValue means we will end up
doing needless allocations for StyleAnimationValue objects (the copy
constructor for which can result in performing potentially expensive heap
allocations, such as when lists are deep-copied).

Instead, we add a Move constructor to StyleAnimationValue and add an overload
of AnimValuesStyleRule::AddValue that takes an rvalue reference. This
provides a more consistent interface to AnimValuesStyleRule and avoids the
unnecessary allocations from copying StyleAnimationValue objects.

MozReview-Commit-ID: CaP1uPAgNnm
2016-03-30 08:59:01 +09:00
Dan Glastonbury
bdceaeb447 Bug 1262358 - Part 1: Split autoplay condition into statements. r=cpearce
MozReview-Commit-ID: 19f4XOa4Kzw

--HG--
extra : rebase_source : c6d8f6c96e1c519e43eff6144289a8fc6eea4827
2016-04-06 17:30:06 +10:00
Jean-Yves Avenard
778f74db59 Bug 1262727: [webm] Ensure first frame returned after seek is a keyframe. r=kinetik
Same after a reset or the first frame ever returned by the demuxer.

MozReview-Commit-ID: 6b7XlIk5GE4

--HG--
extra : rebase_source : 7e7b92c2ed7ea6973ad3869477b3110925a64525
2016-04-07 17:40:16 +10:00
Ryan VanderMeulen
eedb7f6dc6 Bug 1252348 - Re-enable the dom/canvas tests on OSX debug e10s.
--HG--
extra : rebase_source : d21ccf3faa0754638fbbe14c4e7f490e37ce964c
2016-04-10 16:57:41 -04:00
Tobias Schneider
6e99e0d3f5 Bug 1262745 - Fix tests for Canvas CSS/SVG Filters. r=mstange 2016-04-07 11:16:00 -04:00
Ryan VanderMeulen
dbe7d64087 Backed out changeset 64542516354c (bug 1263405) for bustage. 2016-04-09 23:14:15 -04:00
Andrea Marchesini
47328b2026 Bug 1263405 - Some headers missing in dom/base, r=smaug 2016-04-10 03:48:51 +01:00
Ryo Kato
39e1d58e52 Bug 1255682 - Remove unnecessary t.step_func() from a chrome test r=hiro
In promise chains, we don't have to use t.step_func. However, when there
are callbacks in promise chains, assertions in the callbacks need wrapped
in either t.step or t.step_func.

If we use t.step_func, a variable scope might be divided. This can be a
problem when an assertion uses local-scope variable (e.g. the callback
in MutationObserver uses an assertion which take `changedAnimation`).

Therefore, t.step is helpful in this case.

(There no t.step_func we should remove in web-platform tests.)

MozReview-Commit-ID: IiSizgCQjpG

--HG--
extra : rebase_source : bfe314c20763d0ea26127dd561c64388d6431bf3
2016-04-03 16:20:20 +09:00
Tobias Schneider
9de749f7f5 Bug 1195968 - Check how CanvasFilterChainObserver accesses the CanvasRenderingContext2D. r=mstange 2016-04-09 15:43:14 -04:00
Tobias Schneider
9ab4d2075d Bug 1163107 - Changes to font size not respected when using relative filter units. r=mstange 2016-04-07 00:14:00 -04:00
Andrea Marchesini
b0d38d029e Bug 1258221 - patch 3 - Rename FileSystemTaskBase to FileSystemTaskChildBase, r=smaug 2016-04-09 19:17:28 +01:00
Andrea Marchesini
9345155089 Bug 1258221 - patch 2 - Port FileSystem API and DeviceStorage API to PBackground, r=smaug 2016-04-09 19:17:02 +01:00
Andrea Marchesini
c6067c0a80 Bug 1258221 - patch 1 - File::CreateFromFile only for main-thread, r=smaug 2016-04-09 19:15:50 +01:00
Ryan VanderMeulen
bb5308d31a Merge m-c to inbound. a=merge 2016-04-09 10:08:57 -04:00
Ryan VanderMeulen
bf239fcfbd Bug 1209280 - Skip test_peerConnection_twoVideoTracksInOneStream.html on Android due to frequent failures. a=test-only 2016-04-09 09:57:39 -04:00
Ryan VanderMeulen
3efda0214f Bug 471139 - Re-enable test_HTMLDocument12.html. r=sicking 2016-04-09 09:54:12 -04:00
Andrew McCreight
aaee4c2b6e Bug 1263235, part 4 - Make PBrowserStream::Write's data argument last. r=jimm
This will reduce internal memory fragmentation for the IPC::Message used to make this call.
2016-04-09 06:50:59 -07:00
Andrew McCreight
8fc2a0583c Bug 1263235, part 2 - Make PContent::AsyncMessage and PContentBridge::AsyncMessage's data argument last. r=smaug 2016-04-09 06:50:59 -07:00
Andrew McCreight
33947a1b40 Bug 1263235, part 1 - Move PBrowser::AsyncMessage's data argument last. r=smaug
This will reduce internal memory fragmentation for the IPC::Message used to make this call.
2016-04-09 06:50:59 -07:00
Ryan VanderMeulen
ff69545e25 Bug 932350 - Re-enable the dom-level* mochitests across all platforms. 2016-04-09 09:32:20 -04:00
Ben Kelly
6f3adcd11b Bug 1260591 Move ServiceWorkerInfo and ServiceWorkerRegistrationInfo into separate files. r=jdm 2016-04-08 17:28:25 -07:00
Wes Kocher
dfc7e5253f Merge m-c to inbound, a=merge
MozReview-Commit-ID: 9YZdlIARozU
2016-04-08 16:47:03 -07:00
Carsten "Tomcat" Book
a0247db7af merge mozilla-inbound to mozilla-central a=merge 2016-04-08 12:00:31 +02:00
Kris Maglione
355e3293b3 Bug 1262069: Wrap promise resolution values before storing. r=bz
MozReview-Commit-ID: GRKOBucpacE

--HG--
extra : rebase_source : 18715f7db974122c32c0e12ec9010494e493977a
2016-04-07 13:33:50 -07:00
Wes Kocher
51eb5dbf5a Merge inbound to central, a=merge
MozReview-Commit-ID: L8YZYtbmper
2016-04-07 13:42:10 -07:00
Wes Kocher
4eb363ea98 Merge fx-team to central, a=merge
MozReview-Commit-ID: EDJ4CSa3zBH
2016-04-07 13:32:25 -07:00
Wes Kocher
b119ca60cb Backed out changeset 50b8a47e960c (bug 1261536) for being the likely cause of the really-frequent bug 1262130 a=backout
MozReview-Commit-ID: 5rGwJ3gPnYu
2016-04-07 12:33:25 -07:00
William Chen
303bd1fd42 Bug 1259590 - Remove B2G ACL code. r=khuey 2016-04-07 09:50:01 -07:00
Carsten "Tomcat" Book
1542317855 merge mozilla-inbound to mozilla-central a=merge 2016-04-07 11:52:05 +02:00
Carsten "Tomcat" Book
39feff8fe1 Backed out changeset 6733c0861332 (bug 1258595) for m3 test failures 2016-04-07 14:22:33 +02:00
Carsten "Tomcat" Book
24c3443ab9 Merge mozilla-central to fx-team 2016-04-07 11:59:37 +02:00
Johann Hofmann
5c9a95e828 Bug 1262559: Fix misspelled comment in dom/push/PushServiceWebSocket.jsm; r=jdm
MozReview-Commit-ID: 6UhyYkb08Fr

--HG--
extra : histedit_source : 9260c1a47682a239d09f91dfe59d0b39e5d9335a
2016-04-06 20:18:04 +02:00
Makoto Kato
c46046d1a5 Bug 1262335 - Part 3. Remove OMX loader for Android GB/HC. r=snorp
MozReview-Commit-ID: CBWVeqimtq0

--HG--
extra : rebase_source : ade416b02eafba462ad6eb6bf6d5a12096a10a11
2016-04-06 17:30:45 +09:00
Kyle Huey
5ae7a0e455 Bug 1261428: Clean up a bit more. r=bz 2016-04-06 14:57:44 -07:00
Kyle Huey
285235dfaa Bug 1261428: Migrate the useless setTimeout error message to the bindings infrastructure. r=bz 2016-04-06 14:20:30 -07:00
Jeff Gilbert
8bca05c326 Bug 1260944 - Fix ANGLE D3D WARP for WebGL. - r=jrmuizel 2016-04-06 13:47:25 -07:00
Ben Kelly
8fa311db70 Bug 1256428 P19 Address ServiceWorkerUnregisterJob review feedback. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
7e15b8af00 Bug 1256428 P18 Add spec annotations and tweak asserts in ServiceWorkerUpdateJob. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
807cba86ca Bug 1256428 P17 Rename service worker job classes to remove "2" suffix. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
2fc57fa286 Bug 1256428 P16 Fix some issues calling purgeCache() in ServiceWorkerUpdateJob.cpp. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
230ff32ecd Bug 1256428 P15 Perform byte-for-byte comparison check after validating script URL. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
5be0b3bf6e Bug 1256428 P14 Remove dead code in SeviceWorkerUpdateJob.cpp. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
e12c361099 Bug 1256428 P13 Remove unnecessary ServiceWorkerUnregsterJob2 stop. r=jdm
See: https://github.com/slightlyoff/ServiceWorker/issues/855
2016-04-06 13:27:23 -07:00
Ben Kelly
bd0809f521 Bug 1256428 P12 ServiceWorkerUnregisterJob2 should not use ServiceWorkerManager internals. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
aefe22fcb0 Bug 1256428 P11 Don't coalesce SW jobs after the existing job has already resolved its promise. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
6bdc298a74 Bug 1256428 P10 Remove ServiceWorkerRegistrationInfo::mUpdating flag. r=jdm 2016-04-06 13:27:23 -07:00
Ben Kelly
1bafe887a8 Bug 1256428 P9 Remove now unused code from ServiceWorkerManager.cpp. r=jdm 2016-04-06 13:27:22 -07:00
Ben Kelly
7358d7c977 Bug 1256428 P6 Use ServiceWorkerJobQueue2 and new job classes in ServiceWorkerManager. r=jdm 2016-04-06 13:27:22 -07:00
Ben Kelly
50026652cb Bug 1256428 P5 Add ServiceWorkerUnregisterJob2 class. r=jdm 2016-04-06 13:27:22 -07:00