Commit graph

1,293 commits

Author SHA1 Message Date
JustOff
e234612456 Add ConvertJSValueTo*String functions that just take a value and hand out a string, without extra complications 2019-03-16 07:03:32 +08:00
JustOff
6196fdda47 Rename the MozMap C++ type to "record" and give it a template parameter for the key type 2019-03-16 07:03:30 +08:00
JustOff
d9eeac26ef Rename "MozMap" to "record" in our IDL parser and IDL files 2019-03-16 07:03:27 +08:00
JustOff
f953e2ad26 Split up PrimitiveOrStringType into PrimitiveType and StringType in the Web IDL parser 2019-03-16 07:03:24 +08:00
JustOff
69cc954889 Change JS to MozMap conversion to more closely follow the record<> spec 2019-03-16 07:03:22 +08:00
JustOff
17d23ee848 Add some tests for distinguishability of unions 2019-03-16 07:03:20 +08:00
JustOff
740f68378f Disallow mozmap-typed constants 2019-03-16 07:03:17 +08:00
JustOff
bc82c959ec Fix up some minor issues with default value handling in codegen 2019-03-16 07:03:15 +08:00
JustOff
4faee1f41a Change the MozMap API and data storage to more what we want record<> to look like 2019-03-16 07:03:12 +08:00
JustOff
a3f38ee838 Support string default values for unions containing USVString 2019-03-16 07:03:07 +08:00
wolfbeast
9bcb7ab2a5 Remove various hard-coded Accept: headers
Since we're now handling this in the network back-end, there's no
need for this anymore.

Tag #993.
2019-03-16 07:02:13 +08:00
wolfbeast
59ee48bfb0 Prevent loading of document subresources over FTP. 2019-03-16 07:01:31 +08:00
JustOff
7ae2bd83b7 Preserve newlines in textarea placeholders 2019-02-21 14:55:08 +08:00
wolfbeast
1cc92006b6 Implement origin-clean algorithm for ImageBitmap.
This resolves #973.
2019-02-16 00:28:25 +08:00
wolfbeast
24fda598ca Allow empty string on location.search setter.
Fixes #970.
2019-02-16 00:28:18 +08:00
wolfbeast
a7680e43ed Revert "Increase purple limit triggers for CC."
This reverts commit babedf6c696f88734e59b63d0c6614962cc57519.
2019-02-16 00:28:13 +08:00
wolfbeast
183aae036f Get RefPtr to transaction before using it. (DiD)
Avoid potential use-after-free by getting a RefPtr to a transaction
before calling content code that could cause its de-allocation.
2019-02-16 00:28:07 +08:00
Andrew McCreight
7b5e5f85de Increase slice time for longer running CCs.
If a CC takes too long (around 50 slices) or gets interrupted by a GC,
we have to finish it synchronously, which can cause a big pause.
This patch tries to avoid that by eagerly increasing the slice budget
the longer a CC goes on. It linearly increases the slice time from 5ms
to 40ms as we approach the halfway point of a CC (1 second), matching
GC pauses, and then leaves it at 40ms.
2019-02-16 00:27:52 +08:00
wolfbeast
6cba36850f Increase purple limit triggers for CC.
Making these much larger to allow more purple buffer buildup
and prevent overzealous cycle collection on purple buffer pressure.
2019-02-16 00:27:50 +08:00
wolfbeast
39d5eb7759 Remove NS_IMPL_CYCLE_COLLECTION_TRAVERSE_SCRIPT_OBJECTS 2019-02-16 00:27:49 +08:00
wolfbeast
e015efb999 Consolidate tracing and traversing. 2019-02-16 00:27:47 +08:00
wolfbeast
3cc2485e42 Properly camelCase dom.intersectionObserver.enabled pref. 2019-02-16 00:24:32 +08:00
wolfbeast
7798af3c14 Actually unlink targets from registered intersection observers.
When a node is released/removed, and it has an intersection observer
attached to it, that observer should be unlinked at the time of release.

This resolves #935.
2019-02-16 00:24:29 +08:00
wolfbeast
dc2cf8544d Rewrite IntersectionObserver list handling to be more robust.
Tag #935.
2019-02-16 00:24:21 +08:00
wolfbeast
9222116f26 Add isIntersecting property to IntersectionObserverEntry.
Per updated spec.

This resolves the issue raised in #249.
2019-02-16 00:24:20 +08:00
adeshkp
4c3713155e Remove unused telemetry timer from HTMLMediaElement.h 2019-02-16 00:24:06 +08:00
adeshkp
aea50f182f Telemetry: Remove stubs and related code 2019-02-16 00:24:04 +08:00
wolfbeast
14ea8bb121 Align Element.ScrollIntoView() with the spec.
This also removes the (unused) shadow alias from nsIDOMHTMLElement
which used the different calling convention.

This resolves #927
2019-02-16 00:24:00 +08:00
wolfbeast
a0d362b6e3 Remove proprietary constructor on AudioContext.
This is a B2G leftover, was proprietary, and is causing issues
because `AudioContext` can now have a parameter that is a property bag,
per spec (we do not do anything with the property bag now; the audio
back-end will use automatic values for everything).

This resolves #924.
2019-02-16 00:23:54 +08:00
trav90
e831ce0f5b Avoid redefined macro warning in MediaFormatReader 2019-02-16 00:23:14 +08:00
trav90
74ccd45360 [FFmpeg] Don't define AV_CODEC_ID_VPx with libavcodec 58 2019-02-16 00:23:11 +08:00
trav90
5949fc61dc [FFmpeg] Use new decode API with recent FFmpeg version.
In libavcodec 58 and later, the old avcodec_decode_video2 is broken and only return the first visible frame found after a VP9 super-frame.
2019-02-16 00:23:10 +08:00
wolfbeast
304984a6aa Fix crashiness of IntersectionObservers.
Mozilla hashtables -still- suck.
2019-02-16 00:23:05 +08:00
wolfbeast
d76f949502 [intersection-observer] Calculate areas using int64_t.
Tag #249
2019-02-16 00:23:00 +08:00
wolfbeast
f82da789c8 Fix singed/unsigned type confusion for intersection threshold.
Tag #249
2019-02-16 00:22:59 +08:00
wolfbeast
d3a8693d52 Use content area as the intersection rectangle ...
... for custom root with overflow clip.
Tag #249
2019-02-16 00:22:57 +08:00
wolfbeast
475d865c14 Map intersectionRect to the coordinate space of the target document.
Spec says: "Map intersectionRect to the coordinate space of the
viewport of the Document containing the target."
Tag #249
2019-02-16 00:22:56 +08:00
wolfbeast
52f04699c0 Use targetFrame->GetRectRelativeToSelf() as the initial intersection rect.
Tag #249.
2019-02-16 00:22:54 +08:00
wolfbeast
47f52cee1f Intersection ratio should be 1.0 for zero-area intersections.
Tag #249
2019-02-16 00:22:53 +08:00
wolfbeast
42d9f2ffb3 Revise lifetime management of IntersectionObservers.
Tag #249
2019-02-16 00:22:51 +08:00
trav90
129388e5e0 Remove AndroidMediaDecoder and friends
They are no longer supported and don't work with newer Android versions anyway.
2019-02-16 00:22:37 +08:00
wolfbeast
4aacec4782 Issue #910 part 3. Throw SyntaxError from Location::SetProtocol on URI parse failures. 2019-02-16 00:22:31 +08:00
wolfbeast
a6eab2d84e Issue #910 part 2. Strip ':' and anything following it from the string passed to the location.protocol setter. 2019-02-16 00:22:29 +08:00
wolfbeast
32eb361301 Issue #910 part 1. Don't navigate when location.protocol is set to anything other than http or https. 2019-02-16 00:22:28 +08:00
wolfbeast
a3386fbe38 Make HTMLOptionsCollection::mSelect into a strong reference.
The cycle collector makes weak references like this obsolete.
2019-02-16 00:22:20 +08:00
wolfbeast
27d88fc505 Do not report resource-timing subdocument loads triggered by that subdocument. 2019-02-16 00:22:18 +08:00
wolfbeast
391e7d295f Clear CanvasShutdownObserver::mCanvas when the canvas goes away.
This is fallout from Bug 1167235 - Use a fast method of double buffering for canvas.

It is possible for the CanvasRenderingContext2D to be destroyed while we're in the
middle of the call to nsObserverService::NotifyObservers() for shutdown.
This leaves the shutdown observer with a dangling pointer to the canvas, so this
patch explicitly clears the pointer when the context goes away.
2019-02-16 00:22:12 +08:00
wolfbeast
c2aa68fcd1 Root parameter dictionaries in AesTask::Init(). 2019-02-16 00:22:07 +08:00
wolfbeast
bb5e286644 Clear weak pointers in VTT shutdown observers. 2019-02-16 00:21:20 +08:00
trav90
9ddf94a187 Add missing #include 2019-02-16 00:21:17 +08:00