Commit graph

1,056 commits

Author SHA1 Message Date
Moonchild
26990a1d74 Pref and disable getRootNode()
This is apparently used for fallback selection and if available it is "assumed"
Shadow DOM is also available, while this is a utility function.

Webcompat is a nightmare sometimes.
2020-08-08 06:56:50 +08:00
Moonchild
9dc4265141 [dom] Fix a spec compliance issue with the HTML LS regarding script loading.
This fixes a spec compliance issue with section 8.1.4.2 Fetching scripts.
2020-07-31 08:08:01 +08:00
Moonchild
52c03190ee [network/dom] Improve sanitization of download filenames. 2020-07-31 08:07:47 +08:00
Moonchild
b33e80b186 Issue #1391 - Remove the DOM battery API 2020-07-31 08:07:41 +08:00
Moonchild
078fea47aa Fix line endings. 2020-07-31 08:05:47 +08:00
Moonchild
70bf74e9d3 Issue #1587 Part 12 (followup 2): Allow clearing of signal by setting to null. 2020-07-31 08:05:44 +08:00
Moonchild
1ae6431766 Issue #1587 Part 11 (followup 1): Implement multithreaded signals for workers. 2020-07-31 08:05:40 +08:00
Gaming4JC
d081fe1bc6 Issue #618 - Remove eager instantiation - Debug follow up
The added debug assertion did not take into account microtask refactoring done in BZ 1405821.
Resulting in error: no member named 'IsInMicroTask' in 'nsContentUtils'.

This resolves the error.
2020-07-20 09:38:43 +08:00
Moonchild
e0ab4f9abf Issue #618 - Slightly improve module scripting tests.
Ref: BZ 1388728
2020-07-10 22:18:07 +08:00
Moonchild
743bdc04fb Issue #618 - Further align error handling for module scripts with the spec
Ref: BZ 1388728
2020-07-10 22:18:04 +08:00
Moonchild
a754a7be26 Issue #618 - Remove eager instantiation
This backs out the stuff added in Bug 1295978.
Ref: BZ 1295978, 1388728
2020-07-10 22:17:58 +08:00
Moonchild
91a79c0ddc Issue #618 - Match JSAPI names with the changes in 9ca74147225eed305e28c7887f9b2251aeeb0f36
Ref: BZ 1388728
2020-07-10 22:17:52 +08:00
Moonchild
336347212b Issue #618 - Add clarifying code comments. 2020-07-10 22:17:38 +08:00
Moonchild
27f4d0b5a5 Issue #618 - Check for failed instantiation when starting to fetch dependencies
If instantiation has failed, then also fail the load and don't fetch imports.
Ref BZ: 1358882
2020-07-10 22:17:34 +08:00
Moonchild
c04b682a88 Issue #1603 - Part 2: Split some classes out of ScriptLoader.cpp
This splits ScriptLoader up the same way Mozilla did with the exception of
ScriptRequest due to the fact that ScriptLoader and ScriptRequest are
interdependent and would create a circular dependency if split apart when not
using unified building.
2020-07-04 07:01:03 +08:00
Moonchild
f85b274e94 Issue #1603 - Part 1: Reorganize ScriptLoader/ScriptElement
- Moves scripting parts of DOM into 'dom/script'
- Renames nsScript{Loader/Element} to Script{Loader/Element}
- Adjusts all callers
2020-07-04 07:01:00 +08:00
wolfbeast
179fd7df8a Issue #1602 - Make sure we have a JSObject before trying to get global.
Dynamic script loading/unloading (thank you modules) can yank the script
out from under us before the JS API for it is initialized, leading to
null deref crashes.
This adds a simple check if the passed-in object is sane and present.
Resolves #1602
2020-07-04 07:00:57 +08:00
Matt A. Tobin
90e9fd3550 Bug 1430299 - Add DocumentOrShadowRoot interface
Tag #1375
2020-06-20 06:43:51 +08:00
Matt A. Tobin
693a79ca08 Bug 1429656 - Implement ShadowRoot.activeElement
Tag #1375
2020-06-20 06:43:49 +08:00
Matt A. Tobin
db72493615 Bug 1426494 - Share more code between nsIDocument and ShadowRoot
Tag #1375
2020-06-20 06:43:47 +08:00
Matt A. Tobin
15f6d2efda Bug 1355787 - nsIdentifierMapEntry should let one to use either strings or atoms as keys to avoid slow string assignments when possible.
Tag #1375
2020-06-20 06:43:45 +08:00
Matt A. Tobin
c21eecd1b3 Bug 1217436 - Make nsIdentifierMapEntry::mIdContentList an AutoTArray to save an allocation
Tag #1375
2020-06-20 06:43:43 +08:00
Moonchild
3d396386dc Issue #1587 - Part 9: Immediately reject an already-aborted signal 2020-06-12 22:12:37 +08:00
Moonchild
8ac3ccd67a Issue #1587 - Part 8: Remove controller follow/unfollow
Since it didn't end up being in the final spec after all.
2020-06-12 22:12:34 +08:00
Moonchild
b988c351ff Issue #1587 - Part 7: Rename FetchController to AbortController
Also renames FetchSignal to AbortSignal. Includes renaming the various
controlling prefs to enable.
2020-06-12 22:12:32 +08:00
Moonchild
0c2404efa7 Issue #1587 - Part 6: Move FetchController/Signal to its own dir
Since it is specced separately from fetch.
2020-06-12 22:12:29 +08:00
Moonchild
3d2ca85edd Issue #1587 - Part 5: Hook FetchObserver up to the Fetch API 2020-06-12 22:12:27 +08:00
Moonchild
6722d7f4b4 Issue #1587 - Part 4: Implement FetchObserver 2020-06-12 22:12:25 +08:00
Moonchild
78ff97aaf3 Issue #1587 - Part 3: Hook FetchSignal up to the Fetch API 2020-06-12 22:12:23 +08:00
Moonchild
7207793622 Issue #1587 - Part 2: Implement controller follow/unfollow 2020-06-12 22:12:20 +08:00
Moonchild
24087592ad Issue #1587 - Part 1: Implement FetchController/FetchSignal interface 2020-06-12 22:12:18 +08:00
Gaming4JC
21f87c85ec Issue #439 - Debug follow up to remove no longer existing headers
Although the headers were removed, they are still referenced in WebIDL causing compiler to fail for debug builds.
This removes TestFunctions.webidl and TestInterfaceJSMaplikeSetlikeIterable.webidl, with nit fix for existing incorrect whitespace.
2020-06-12 22:11:56 +08:00
Moonchild
7900742344 Issue #1585 - Replace node.rootNode with node.getRootNode()
This removes the (default disabled) node.rootNode readonly attribute
and replaces it with a node.getRootNode() function per WhatWG
spec discussion.
Based on work by John Dai <jdai@mozilla.com>
2020-06-10 21:00:36 +08:00
Moonchild
cd1c94480d Issue #1560 - Always include speech synthesis IPDLs
This is entangled with the IPC messaging configuration so
we need these IPDLs even if sppech synthesis is otherwise
not being built.

This resolves #1560
2020-06-10 21:00:11 +08:00
Moonchild
594c930eca Issue #439 - Remove, fix and clean up automated tests
With the big amount of code churn around DOM a lot of tests
broke severely enough that they caused build bustage.
This commit cleans up, removes or otherwise fixes tests
that are broken, no longer relevant or obsolete.
2020-06-10 21:00:09 +08:00
Gaming4JC
d9c487dfd1 Issue #1580 - Add missing MP3Demuxer.h to MediaDecoderReader.h
Follow up for dom/media work on Issue #80. Fixes non-optimized build bustage.
2020-06-10 20:59:47 +08:00
Moonchild
179b6782d5 Fix missing include 2020-06-06 07:21:23 +08:00
Moonchild
b26dfcc543 Issue #80 - Re-land early dom/media de-unification with fixups.
For some reason these changes never got merged back to master
after reverting to work on a branch...
2020-06-06 07:21:21 +08:00
Moonchild
0ae2d2fb2e Bug 1632717 2020-06-06 07:21:12 +08:00
wolfbeast
d2ec4693eb Issue #1564 - Fix debug build dependencies 2020-05-30 07:13:05 +08:00
wolfbeast
5416b4294b Issue #1564 - Split off nsIdentifierMapEntry in its own header
+ Fix dependency fallout from removing nsDocument.h from ShadowRoot.h
2020-05-30 07:13:02 +08:00
athenian200
f6b3f2c38b Issue #1557 - Allow event dispatch on disabled form controls.
Based on https://bugzilla.mozilla.org/show_bug.cgi?id=329509

This seems to resolve #1356 without causing #1557.

Also reverts previous changes as they no longer appear to serve a purpose.
2020-05-23 06:56:44 +08:00
Moonchild
5f14f0126f Issue #1538 - remove speech recognition engine
This removes speech recognition, pocketsphinx, training models
and the speech automated test interface.
This also re-establishes proper use of MOZ_WEBSPEECH to work
for the speech API (synthesis part only) that was a broken mess
before, with some synth parts being always built, some parts
being built only with it enabled and recognition parts being
dependent on it. I'm pretty sure it'd be totally busted if you'd
ever have tried building without MOZ_WEBPEECH before.

Tested that synthesis still works as-intended.

This resolves #1538
2020-05-23 06:56:16 +08:00
Moonchild
db14a637c4 Issue #1543 - Align <img> with no src to the updated spec. 2020-05-16 06:49:14 +08:00
athenian200
7ae0c88c46 Issue #1540 - Stop MP3 demuxer from choking on very small files. 2020-05-16 06:48:09 +08:00
wolfbeast
84053aba97 Issue #1589 - Ensure computed length and data is always available 2020-05-16 06:48:05 +08:00
Moonchild
2d3f069ae8 Issue #1536 - Part 3: Parse content to decide whether it's an init segment. 2020-05-09 06:56:53 +08:00
wolfbeast
c604c8363d Issue #1536 - Part 2: Parse content to decide whether it's a media segment. 2020-05-09 06:56:49 +08:00
wolfbeast
d71453cef3 Issue #1536 - Part 1: Add timecode checking for the WebM parser 2020-05-09 06:56:47 +08:00
Moonchild
2442d307b5 [dom] Reorder some calls to improve memory safety 2020-05-09 06:56:35 +08:00