Commit Graph

2028 Commits

Author SHA1 Message Date
Boris Zbarsky
1852a29c3b Use %g, not %f, for our error reporting so unnecessary trailing zeros are not output. No bug. r=birtles
Differential Revision: https://phabricator.services.mozilla.com/D62062

--HG--
extra : moz-landing-system : lando
2020-02-10 01:35:00 +00:00
Boris Zbarsky
1395be1f23 Bug 1613013 part 3. Annotate TypeErrors and RangeErrors from WebIDL implementations with the method they come from. r=peterv
Please review the changes to Errors.msg very carefully.  I caught a number of
mistakes there in self-review (e.g. not renumbering replacement markers
correctly when I added {0} to the beginnings of strings), and my confidence
that I caught them all is only middling.

A few lines (MSG_USELESS_SETTIMEOUT, MSG_TYPEDARRAY_IS_DETACHED,
MSG_NOT_SUBMIT_BUTTON) were removed from Errors.msg either because they were
already unused or because they either were single-user constant strings or
became such in the new setup and we could just use the string version of
ThrowTypeError.

Differential Revision: https://phabricator.services.mozilla.com/D61523

--HG--
extra : moz-landing-system : lando
2020-02-06 21:22:32 +00:00
Boris Zbarsky
09a1a6496e Bug 1613013 part 2. Change ThrowErrorMessage to be templated on the error number. r=peterv
This makes it easier to static_assert correct use.  It caught several bugs in
the next patch in this stack.

I had to disambiguate some calls to the templated ThrowDOMException that are
inside the binding_detail namespace, because otherwise they were trying to call
teh non-template function of the same name that's declared in binding_detail.

Differential Revision: https://phabricator.services.mozilla.com/D61522

--HG--
extra : moz-landing-system : lando
2020-02-06 20:40:36 +00:00
Emilio Cobos Álvarez
69c87f6cb2 Bug 1613349 - Rename nsINode::DeleteProperty to RemoveProperty. r=smaug
And the related methods as well.

Differential Revision: https://phabricator.services.mozilla.com/D61768

--HG--
extra : moz-landing-system : lando
2020-02-06 16:06:49 +00:00
Brian Birtles
f3b367f560 Bug 1608858 - Update the effect set when an animation changes relevance due to a call to updatePlaybackRate; r=boris
In this particular case where we're paused, we don't need to repaint or
synchronize animations on layers, but we do need to update the effect set so
that getAnimations() returns the correct result.

Differential Revision: https://phabricator.services.mozilla.com/D61258

--HG--
extra : moz-landing-system : lando
2020-01-30 23:39:12 +00:00
Emilio Cobos Álvarez
256c124f94 Bug 1609996 - Reorder some includes affected by the previous patches. r=froydnj
This was done by:

This was done by applying:

```
diff --git a/python/mozbuild/mozbuild/code-analysis/mach_commands.py b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
index 789affde7bbf..fe33c4c7d4d1 100644
--- a/python/mozbuild/mozbuild/code-analysis/mach_commands.py
+++ b/python/mozbuild/mozbuild/code-analysis/mach_commands.py
@@ -2007,7 +2007,7 @@ class StaticAnalysis(MachCommandBase):
         from subprocess import Popen, PIPE, check_output, CalledProcessError

         diff_process = Popen(self._get_clang_format_diff_command(commit), stdout=PIPE)
-        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format]
+        args = [sys.executable, clang_format_diff, "-p1", "-binary=%s" % clang_format, '-sort-includes']

         if not output_file:
             args.append("-i")
```

Then running `./mach clang-format -c <commit-hash>`

Then undoing that patch.

Then running check_spidermonkey_style.py --fixup

Then running `./mach clang-format`

I had to fix four things:

 * I needed to move <utility> back down in GuardObjects.h because I was hitting
   obscure problems with our system include wrappers like this:

0:03.94 /usr/include/stdlib.h:550:14: error: exception specification in declaration does not match previous declaration
0:03.94 extern void *realloc (void *__ptr, size_t __size)
0:03.94              ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/malloc_decls.h:53:1: note: previous declaration is here
0:03.94 MALLOC_DECL(realloc, void*, void*, size_t)
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozilla/mozalloc.h:22:32: note: expanded from macro 'MALLOC_DECL'
0:03.94     MOZ_MEMORY_API return_type name##_impl(__VA_ARGS__);
0:03.94                                ^
0:03.94 <scratch space>:178:1: note: expanded from here
0:03.94 realloc_impl
0:03.94 ^
0:03.94 /home/emilio/src/moz/gecko-2/obj-debug/dist/include/mozmemory_wrap.h:142:41: note: expanded from macro 'realloc_impl'
0:03.94 #define realloc_impl mozmem_malloc_impl(realloc)

   Which I really didn't feel like digging into.

 * I had to restore the order of TrustOverrideUtils.h and related files in nss
   because the .inc files depend on TrustOverrideUtils.h being included earlier.

 * I had to add a missing include to RollingNumber.h

 * Also had to partially restore include order in JsepSessionImpl.cpp to avoid
   some -WError issues due to some static inline functions being defined in a
   header but not used in the rest of the compilation unit.

Differential Revision: https://phabricator.services.mozilla.com/D60327

--HG--
extra : moz-landing-system : lando
2020-01-20 16:19:48 +00:00
Emilio Cobos Álvarez
aa3a695712 Bug 1609996 - Remove mozilla/Move.h. r=froydnj
rg -l 'mozilla/Move.h' | xargs sed -i 's/#include "mozilla\/Move.h"/#include <utility>/g'

Further manual fixups and cleanups to the include order incoming.

Differential Revision: https://phabricator.services.mozilla.com/D60323

--HG--
extra : moz-landing-system : lando
2020-01-20 16:18:20 +00:00
Boris Zbarsky
84a6d324a2 Bug 1610140. Stop using NS_ERROR_DOM_TYPE_ERR in Animation. r=heycam
Differential Revision: https://phabricator.services.mozilla.com/D60362

--HG--
extra : moz-landing-system : lando
2020-01-19 05:43:10 +00:00
Boris Zbarsky
ceac9fe278 Bug 1609858. Stop using NS_ERROR_DOM_TYPE_ERR in TimingParams. r=smaug
It's causing us to throw weird DOMExceptions instead of actual TypeErrors.

Differential Revision: https://phabricator.services.mozilla.com/D60216

--HG--
extra : moz-landing-system : lando
2020-01-17 09:55:27 +00:00
Makoto Kato
7574b8612d Bug 1503656 - Part 1. Always use CssEnvironment from media query's device. r=emilio
Although CssEnvironment is in Device of media query implementation, some code
creates CssEnvironment instance without Device. So I would like always to use it from Device of media query.

Differential Revision: https://phabricator.services.mozilla.com/D52506

--HG--
extra : moz-landing-system : lando
2020-01-08 11:55:28 +00:00
Emilio Cobos Álvarez
86a70df5d7 Bug 1607006 - Remove utf-16 versions of nsCSSProps::LookupProperty* and ServoCSSParser::ComputeColor. r=bzbarsky
Now that we have UTF8String in the WebIDL, we can remove quite a few of the
conversions. Do that, and lift the remaining string conversions up as needed.

Also deindent Servo_ComputeColor while touching it.

Most of the remaining copies are because either bug 1606994, or because they're
WebIDL attributes that we still need to serialize back as UTF-16 (bug 1606995).

Differential Revision: https://phabricator.services.mozilla.com/D58687

--HG--
extra : moz-landing-system : lando
2020-01-08 01:21:30 +00:00
Emilio Cobos Álvarez
b55adec8d8 Bug 1605610 - Ensure to not create transition rules for elements that don't have any transition effect. r=hiro
There are multiple places where bogus non-empty transition rules can be created
before this patch when EffectSet's cascade information isn't up-to-date.  That
can happen as described in bug 1606176.

Anyhow, in this particular call site, this is only used to filter from
transition rules effects that are from running animations, to implement:

https://drafts.csswg.org/css-transitions/#application:

>  Implementations must add this value to the cascade if and only if that
>  property is not currently undergoing a CSS Animation ([CSS3-ANIMATIONS])
>  on the same element.

In the test-case, the EffectSet cascade info is empty, so we hit the "skip
everything" for animations (wrong), and "skip nothing for transitions" (also
wrong). This creates a transition rule node which then we never remove
(understandably, as the element never had a transition!).

This fixes the observables of this test-case, by checking the cascade level
(so that we don't create transition rule nodes with declarations coming from
animations). This is strictly more correct than what we were doing.

If we hit the proposed assertion after this change, this code may still create
transition rules that incorrectly override animations, but will never mint one
out of the blue which we'd then fail to remove (which is the problem the
test-case is hitting).

Differential Revision: https://phabricator.services.mozilla.com/D58333

--HG--
extra : moz-landing-system : lando
2020-01-07 16:21:08 +00:00
Tom Schuster
989660da15 Bug 1605854 - Remove uneval/toSource from DOM tests. r=smaug
Using JSON.stringify in dom/tests/mochitest/chrome/test_clonewrapper.xhtml might not be the best solution, because
the testObject contains ImageData objects.

Differential Revision: https://phabricator.services.mozilla.com/D58645

--HG--
extra : moz-landing-system : lando
2020-01-06 13:09:27 +00:00
Brian Birtles
907178db48 Bug 1604500 - Update relevance when synchronously updating the playback rate in UpdatePlaybackRate; r=boris
Differential Revision: https://phabricator.services.mozilla.com/D58737

--HG--
extra : moz-landing-system : lando
2020-01-06 05:56:54 +00:00
Boris Chiou
bdd5623ab2 Bug 779598 - Do animations of transforms with preserve-3d at compositor. r=mattwoodrow
Differential Revision: https://phabricator.services.mozilla.com/D57029

--HG--
extra : moz-landing-system : lando
2019-12-23 09:52:43 +00:00
Emilio Cobos Álvarez
4a3be9604a Bug 1602317 - Switch style system to associated constants-in-body. r=heycam
This is closer to the equivalent Rust code.

Differential Revision: https://phabricator.services.mozilla.com/D56306

--HG--
extra : moz-landing-system : lando
2019-12-09 03:32:28 +00:00
Gabriele Svelto
ace6d1063f Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442

--HG--
extra : moz-landing-system : lando
2019-12-06 09:24:56 +00:00
Dorel Luca
a381d5c96d Backed out changeset f6e53d1c6518 (bug 1600545) for Android build bustage. CLOSED TREE 2019-12-04 17:32:27 +02:00
Gabriele Svelto
bc9290f767 Bug 1600545 - Remove useless inclusions of header files generated from IDL files in dom/ r=Ehsan
The inclusions were removed with the following very crude script and the
resulting breakage was fixed up by hand. The manual fixups did either
revert the changes done by the script, replace a generic header with a more
specific one or replace a header with a forward declaration.

find . -name "*.idl" | grep -v web-platform | grep -v third_party | while read path; do
    interfaces=$(grep "^\(class\|interface\).*:.*" "$path" | cut -d' ' -f2)
    if [ -n "$interfaces" ]; then
        if [[ "$interfaces" == *$'\n'* ]]; then
          regexp="\("
          for i in $interfaces; do regexp="$regexp$i\|"; done
          regexp="${regexp%%\\\|}\)"
        else
          regexp="$interfaces"
        fi
        interface=$(basename "$path")
        rg -l "#include.*${interface%%.idl}.h" . | while read path2; do
            hits=$(grep -v "#include.*${interface%%.idl}.h" "$path2" | grep -c "$regexp" )
            if [ $hits -eq 0 ]; then
                echo "Removing ${interface} from ${path2}"
                grep -v "#include.*${interface%%.idl}.h" "$path2" > "$path2".tmp
                mv -f "$path2".tmp "$path2"
            fi
        done
    fi
done

Differential Revision: https://phabricator.services.mozilla.com/D55442

--HG--
extra : moz-landing-system : lando
2019-12-04 15:01:19 +00:00
Emilio Cobos Álvarez
3c12d374bc Bug 1600362 - Cleanup IntersectionObserver. r=smaug
Initially this was going to be a simple cleanup: Remove some useless namespaces
here and there and so on, remove `using` statements from the header and so on.

But unfortunately, DOMIntersectionObserver.h (which is included in Element.h,
unnecessarily) ended up exposing `Element` unnamespaced to a lot of code, so I
had to fix that.

Differential Revision: https://phabricator.services.mozilla.com/D55316

--HG--
extra : moz-landing-system : lando
2019-11-29 20:39:36 +00:00
Tim Nguyen
b081bf6c33 Bug 1576946 - Remove nsStackFrame platform code. r=mats
Differential Revision: https://phabricator.services.mozilla.com/D49487

--HG--
extra : moz-landing-system : lando
2019-11-12 19:50:19 +00:00
Boris Chiou
7884884b3d Bug 1592787 - Don't run compositor animations if offset-path is not animating and is none. r=hiro
So, we don't create a stacking context for this case. Besides, we also
make sure FindAnimationsForCompositor() work properly for motion-path if
offset-path is not effective (i.e. none and no animations).

Differential Revision: https://phabricator.services.mozilla.com/D51895

--HG--
extra : moz-landing-system : lando
2019-11-06 20:17:07 +00:00
Mirko Brodesser
b2de103bf9 Bug 1593222: part 12) Rename "nsNodeUtils.*" to "MutationObservers.*". r=smaug
Depends on D51827

Differential Revision: https://phabricator.services.mozilla.com/D51828

--HG--
rename : dom/base/nsNodeUtils.cpp => dom/base/MutationObservers.cpp
rename : dom/base/nsNodeUtils.h => dom/base/MutationObservers.h
extra : moz-landing-system : lando
2019-11-06 09:08:06 +00:00
Mirko Brodesser
4807f484fc Bug 1593222: part 10) Move Animation* methods to MutationObservers. r=smaug
Depends on D51825

Differential Revision: https://phabricator.services.mozilla.com/D51826

--HG--
extra : moz-landing-system : lando
2019-11-05 20:39:22 +00:00
Mirko Brodesser
f7921bb4e3 Bug 1593222: part 2) Move nsNodeUtils::GetTargetForAnimation to Animation class. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D51607

--HG--
extra : moz-landing-system : lando
2019-11-05 14:23:13 +00:00
Nicolas Silva
cff6e480f0 Bug 1587713 - Adjust the tests to account for transform layerization changes with webrender. r=jrmuizel
Differential Revision: https://phabricator.services.mozilla.com/D50963

--HG--
extra : moz-landing-system : lando
2019-11-04 14:55:24 +00:00
Boris Chiou
d77411c397 Bug 1429305 - Enable OMTA for motion path and add some tests for it. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D50015

--HG--
extra : moz-landing-system : lando
2019-10-31 21:16:35 +00:00
Geoff Brown
1984c353ae Bug 1591121 - Disable some tests on Android; r=geckoview-reviewers,snorp
I have recently enabled many mochitests on Android, but a few of those tests are
still failing intermittently; let's skip those tests again to avoid the intermittent
failures.

Differential Revision: https://phabricator.services.mozilla.com/D50562

--HG--
extra : moz-landing-system : lando
2019-10-25 13:30:06 +00:00
Geoff Brown
32490358c2 Bug 1585119 - Re-enable many more mochitests on Android; r=geckoview-reviewers,snorp
Most of these tests have been disabled for a long time; they run well
in the current test environment.
I intend to enable still more mochitests in a future patch.

Differential Revision: https://phabricator.services.mozilla.com/D49524

--HG--
extra : moz-landing-system : lando
2019-10-18 14:35:20 +00:00
Hiroyuki Ikezoe
e198ba4111 Bug 1585770 - Copy KeyframeEffect::mBaseStyle in the KeyframeEffect copy constructor. r=boris
The original test case doesn't crash reliably but the test case in this commit
crashes 100% locally without this fix.

Differential Revision: https://phabricator.services.mozilla.com/D48009

--HG--
extra : moz-landing-system : lando
2019-10-03 20:00:27 +00:00
Hiroyuki Ikezoe
d7ab277e4e Bug 1583658 - Re-enable test_restyles.html on GeckoView. r=boris
It no longer fails there.

Differential Revision: https://phabricator.services.mozilla.com/D47198

--HG--
extra : moz-landing-system : lando
2019-09-26 21:01:17 +00:00
Boris Chiou
470629b5d3 Bug 1567330 - Add offset shorthand. r=emilio,birtles
Also, update the serialization by the shorter perference because this is
a new feature and using older syntax doesn't make sense.

Besides, use `cssOffset` for web animation IDL attribute name.

Differential Revision: https://phabricator.services.mozilla.com/D45607

--HG--
extra : moz-landing-system : lando
2019-09-23 19:56:33 +00:00
Boris Zbarsky
d0ce4c7209 Bug 1581315 part 3. Add MOZ_MUST_RETURN_FROM_CALLER_IF_THIS_IS_ARG to more ErrorResult methods. r=smaug
Differential Revision: https://phabricator.services.mozilla.com/D46107

--HG--
extra : moz-landing-system : lando
2019-09-20 02:19:18 +00:00
Adam Gashlin
5dbbd97138 Bug 1561546 Part 1 - Change scrollbar pref early. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D46363

--HG--
extra : moz-landing-system : lando
2019-09-18 21:28:06 +00:00
Hiroyuki Ikezoe
f869493a22 Bug 1541705 - Factor out functionalities for obsversing animation style counts into testcommon.js. r=boris
We are going to use these functions in gfx/layers/apz/tests/mochitest/ for
fission.

Differential Revision: https://phabricator.services.mozilla.com/D44418

--HG--
extra : moz-landing-system : lando
2019-09-12 08:08:20 +00:00
Mark Banner
351d147e2f Bug 1577746 - Enable ESLint rule object-shorthand for dom/. r=baku
Differential Revision: https://phabricator.services.mozilla.com/D44149

--HG--
extra : moz-landing-system : lando
2019-09-02 11:22:27 +00:00
Tom Ritter
821203b7b6 Bug 1577243 - Backed out changeset cae99e27ccdd, restoring document.timeline and rAF timestamp comparisons r=birtles
Depends on D43788

Differential Revision: https://phabricator.services.mozilla.com/D43789

--HG--
extra : moz-landing-system : lando
2019-08-28 23:44:14 +00:00
Sylvestre Ledru
acfbfdc9af Bug 1577236 - clang-10: Fix -Wimplicit-int-float-conversion warnings in dom/animation/ r=hiro
Depends on D43779

Differential Revision: https://phabricator.services.mozilla.com/D43780

--HG--
extra : moz-landing-system : lando
2019-08-28 21:31:46 +00:00
Emilio Cobos Álvarez
70b6fda902 Bug 1575926 - Check that we have a target in CalculateCumulativeChangeHint. r=hiro
Seems we'll update the change hint properly via SetTarget if we get a new
target.

Differential Revision: https://phabricator.services.mozilla.com/D43397

--HG--
extra : moz-landing-system : lando
2019-08-26 09:08:22 +00:00
Hiroyuki Ikezoe
5e47b0f499 Bug 1574061 - Use the target window object for waitForAnimationFrames in observeStylingInTargetWindow. r=boris
Also waitForAnimationReadyToRestyle should use owner window object instead of
global `window`.

Differential Revision: https://phabricator.services.mozilla.com/D42078

--HG--
extra : moz-landing-system : lando
2019-08-15 21:20:45 +00:00
kriswright
8c68307d03 Bug 1573268 - Convert two layers.offmainthreadcomposition.* prefs to static prefs. r=njn
Converts layers.offmainthreadcomposition.async-animations and layers.offmainthreadcomposition.log-animations to their respective static prefs. Since all IsAnimationLoggingEnabled() did was create a pref and return the variable sShouldLog, this function is removed and replaced with the static pref.

Differential Revision: https://phabricator.services.mozilla.com/D41651

--HG--
extra : moz-landing-system : lando
2019-08-13 00:02:12 +00:00
Boris Chiou
f6f83966df Bug 1571211 - Enable the pref of motion path in dom/animation/test/chrome. r=hiro
Differential Revision: https://phabricator.services.mozilla.com/D40570

--HG--
extra : moz-landing-system : lando
2019-08-06 23:51:54 +00:00
Tom Ritter
7c2791e322 Bug 1571038 - Copy test logic for scrolled out element to out of view element r=birtles
Differential Revision: https://phabricator.services.mozilla.com/D40664

--HG--
extra : moz-landing-system : lando
2019-08-05 23:16:14 +00:00
Tom Ritter
6dafd6a623 Bug 1571227 - Fix test_restyles to account for double imprecision r=birtles
Differential Revision: https://phabricator.services.mozilla.com/D40663

--HG--
extra : moz-landing-system : lando
2019-08-05 22:45:48 +00:00
Boris Chiou
c4f468de6a Bug 1569795 - Block compositor animations of transform-like properties if offset-path is not none. r=hiro
The animations of motion path are not running on the compositor, and the
properties in [motion-1] is not part of transform-like properties (i.e.
nsCSSProperties::TransformLikeProperties()) for now, so we should run
transform animations on the main thread if offset-path is not `none`.

Differential Revision: https://phabricator.services.mozilla.com/D39966

--HG--
extra : moz-landing-system : lando
2019-08-01 21:22:49 +00:00
Tom Ritter
76b62652f6 Bug 1387894, 1476950 - Fix test_restyles.html for unconditional clamping. r=birtles,hiro
This refactors things to run until the animation is unthrottled. It confirms
the proper amount of time has passed; and then awaits another styling to ensure
that markers.length = 0 (unless it took very long (over 200ms) that it should
be 1.

Differential Revision: https://phabricator.services.mozilla.com/D38808

Depends on D38807

--HG--
extra : rebase_source : 1b668b212c788511962d2557d298af990bd430ad
2019-08-02 07:36:19 +02:00
Tom Ritter
8285198060 Bug 1387894 - Fix the WPT and mochitest test_document-timeline.html for unconditional clamping. r=birtles
We fix this by clamping the requestAnimationFrame timestamp in the test before comparing it.
We don't clamp the requestAnimationFrame timestamp normally because it would be meaningless:
rAF fires on a regular frequency and someone perfoming a fine-grained timing attack will be
able to determine the timestamp from when it fires.

We need to use parseFloat to knock off any extra epislon we gain.

This shouldn't cause any major blow-ups because timelines are disabled in release and beta,
so at least any potential fallout would be constrained.

Differential Revision: https://phabricator.services.mozilla.com/D38807

Depends on D38806

--HG--
extra : rebase_source : d6f6170ae3082022d422f925e8d5619400e845ed
2019-08-02 07:36:09 +02:00
Daniel Varga
c7ecfc9e12 Backed out 9 changesets (bug 1387894) for wpt failures at /web-animations/timing-model/animations/finishing-an-animation.html on a CLOSED TREE
Backed out changeset 998582bf083d (bug 1387894)
Backed out changeset cd58aae7d47b (bug 1387894)
Backed out changeset a51919fb2062 (bug 1387894)
Backed out changeset ef7b589d751b (bug 1387894)
Backed out changeset 75c0249b594a (bug 1387894)
Backed out changeset 4a75f2556242 (bug 1387894)
Backed out changeset 0bff9ba4237c (bug 1387894)
Backed out changeset 80040c0a275e (bug 1387894)
Backed out changeset 02814f69872d (bug 1387894)
2019-07-30 21:05:59 +03:00
Tom Ritter
210fb2ea26 Bug 1387894, 1476950 - Fix test_restyles.html for unconditional clamping r=birtles,hiro
This refactors things to run until the animation is unthrottled. It confirms
the proper amount of time has passed; and then awaits another styling to ensure
that markers.length = 0 (unless it took very long (over 200ms) that it should
be 1.

Differential Revision: https://phabricator.services.mozilla.com/D38808

--HG--
extra : moz-landing-system : lando
2019-07-30 15:11:59 +00:00
Tom Ritter
905b162e22 Bug 1387894 - Fix the WPT and mochitest test_document-timeline.html for unconditional clamping r=birtles
We fix this by clamping the requestAnimationFrame timestamp in the test before comparing it.
We don't clamp the requestAnimationFrame timestamp normally because it would be meaningless:
rAF fires on a regular frequency and someone perfoming a fine-grained timing attack will be
able to determine the timestamp from when it fires.

We need to use parseFloat to knock off any extra epislon we gain.

This shouldn't cause any major blow-ups because timelines are disabled in release and beta,
so at least any potential fallout would be constrained.

Differential Revision: https://phabricator.services.mozilla.com/D38807

--HG--
extra : moz-landing-system : lando
2019-07-30 15:11:50 +00:00