Commit graph

336 commits

Author SHA1 Message Date
Moonchild
b33e80b186 Issue #1391 - Remove the DOM battery API 2020-07-31 08:07:41 +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
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
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
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
6722d7f4b4 Issue #1587 - Part 4: Implement FetchObserver 2020-06-12 22:12:25 +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
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
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
db14a637c4 Issue #1543 - Align <img> with no src to the updated spec. 2020-05-16 06:49:14 +08:00
adeshkp
587a2fcd63 Issue #457 - Fix warning about inline nsINode::GetFlattenedTreeParentNodeForStyle being undefined 2020-05-09 06:55:47 +08:00
Matt A. Tobin
04a69cbc34 Issue #1375 - Merge CustomElements pref with Webcomponents Pref 2020-04-18 07:07:23 +08:00
Matt A. Tobin
ca48752304 Issue #1375 - Fix IsWebComponentsEnabled checks 2020-04-18 07:07:00 +08:00
Matt A. Tobin
b8260c664a Bug 1425769 - Base class for ShadowRoot and Document to manage style state
Tag #1375
2020-04-18 07:06:51 +08:00
Matt A. Tobin
9fdf69e567 Issue #80 - De-unify dom/base
Tag #1375
2020-04-18 07:06:46 +08:00
Matt A. Tobin
a36d367eeb Bug 1348481 - Part 1b: Generalize FindDocStyleSheetInsertionPoint so it doesn't require an array of RefPtrs
Tag #1375
2020-04-18 07:06:38 +08:00
Matt A. Tobin
6f7c738266 Bug 1417829 - Remove unresolved pseudoclass
Tag #1375
2020-04-18 07:06:35 +08:00
Matt A. Tobin
7e48e4407c Bug 1426503 - Remove DestInsertionPoints stuff
Tag #1375
2020-04-18 07:06:32 +08:00
Matt A. Tobin
d9112daf48 Bug 1426536 - Remove nsContentUtils::IsContentInsertionPoint
Tag #1375
2020-04-18 07:06:29 +08:00
Matt A. Tobin
af22b5cba5 Bug 1409976 - Add slotchange event
* Add support for `slotchange` event
* Signal `slotchange` when slot's assigned nodes changes

Tag #1375
2020-04-18 07:06:25 +08:00
Matt A. Tobin
907e210445 Bug 1425441 - Move relatedTarget to WidgetEvent
Tag #1375
2020-04-18 07:06:21 +08:00
Matt A. Tobin
2ee3ce62fc Bug 1412775 - Implement Event.composedPath
Tag #1375
2020-04-18 07:06:15 +08:00
Matt A. Tobin
ca09afd0b0 Bug 1422197 - Add fast path to get DocGroup in binding code for [CEReactions]
Tag #1375
2020-04-18 07:06:12 +08:00
Matt A. Tobin
3b90312fac Bug 1422931 - Fix crash with slot element and make webcomponents preference per-doc
Tag #1375
2020-04-18 07:06:05 +08:00
Matt A. Tobin
6d8e6e8955 Bug 1419799 - Fix nsContentUtils::IsInSameAnonymousTree in Shadow DOM
Tag #1375
2020-04-18 07:06:02 +08:00
Matt A. Tobin
5b1452e120 Bug 1413619 - Fix insertion point computation when display: contents pseudos are involved.
Tag #1375
2020-04-18 07:05:47 +08:00
Matt A. Tobin
cab78760e5 Bug 1409975 - Implement node distribution for shadow tree slots
* Implementation for assignedNodes
* Include slots in the flat tree
* Fix event get-the-parent algorithm for a node
* Update and add reftests for Shadow DOM v1
* Update web platform tests expectations

Tag #1375
2020-04-18 07:05:39 +08:00
Matt A. Tobin
a7ba34c672 Bug 1418002 - Remove HTMLContentElement
Tag #1375
2020-04-18 07:05:35 +08:00
Matt A. Tobin
cedff6e214 Bug 1416999 - Remove document.registerElement
Tag #1375
2020-04-18 07:05:32 +08:00
Matt A. Tobin
31b26a24e3 Bug 1411878 - Support Element.shadowRoot and Element.assignedSlot / TextNode.assignedSlot on closed shadow root
Tag #1375
2020-04-18 07:05:29 +08:00
Matt A. Tobin
67c4d022dc Bug 1404842 - Implement Element.attachShadow and Element.slot
Tag #1375
2020-04-18 07:05:26 +08:00
Matt A. Tobin
efb5979ad5 Bug 1411754 - Rename PresShell::DestroyFramesFor to DestroyFramesForAndRestyle
Tag #1375
2020-04-18 07:05:22 +08:00
Matt A. Tobin
1846dde168 Bug 1404789 - Stop reconstructing frames for the whole shadow root each time content is inserted in a shadow tree
* Cleanup a bit the ShadowRoot code
* Privatize ShadowRoot methods
* When the shadow tree distribution changes, post a restyle + reframe
* Simplify ShadowRoot::IsPooledNode
* Be a bit better at detecting distribution changes

Tag #1375
2020-04-18 07:05:19 +08:00
Matt A. Tobin
6b075994f5 Bug 1408341 - Implement assignedSlot on Element and Text
Tag #1375
2020-04-18 07:05:16 +08:00
Matt A. Tobin
592c34bc79 Bug 1402941 - Add HTMLSlotElement
Tag #1375
2020-04-18 07:05:10 +08:00
Matt A. Tobin
2a185b517b Bug 1401097 - Simplify gHTMLElements and remove redundant conditions in nsXHTMLContentSerializer::LineBreakAfterClose()
Tag #1375
2020-04-18 07:05:06 +08:00
Matt A. Tobin
5917636e83 Bug 1396584 - Remove support for multiple ShadowRoots
Tag #1375
2020-04-18 07:05:03 +08:00
Matt A. Tobin
9928baf912 Issue #1375 - Stop largely using the parser service
This is based on Bug 1395828

* Add nsHTMLElement::IsBlock()
* Rename nsHTMLTags methods
* Remove AssertParserServiceIsCorrect()
* Remove most uses of nsIParserService/nsParserService
2020-04-18 07:04:57 +08:00
Matt A. Tobin
cc649173d2 Bug 1396568 - Make DocumentFragment::mHost a strong reference (so that ShadowRoot.host doesn't become null)
Tag #1375
2020-04-18 07:04:53 +08:00
Matt A. Tobin
f63cd76698 Bug 1389743 - Only reconstruct frames synchronously from ContentRemoved when called from frame construction
Tag #1375
2020-04-18 07:04:47 +08:00
Matt A. Tobin
fe13c5bffc Bug 1375701 - Atomize class attribute value in the parser in the innerHTML case
Tag #1375
2020-04-18 07:04:45 +08:00
Matt A. Tobin
6ce9cc2a25 Bug 1377978 - Make nsRange use uint32_t to offset
Tag #1375
2020-04-18 07:04:38 +08:00