Commit graph

3,709 commits

Author SHA1 Message Date
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
6154d842b0 Bug 1327185 - Refine EventStateManager::FireDragEnterOrExit
Tag #1375
2020-04-18 07:06:18 +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
fc8fcfc039 Bug 1419762 - Return the inline continuation of an IB split when appending
Tag #1375
2020-04-18 07:06:09 +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
eaf0831388 Bug 1419964 - Remove AdjustParentFrameForAfterContent
Tag #1375
2020-04-18 07:05:59 +08:00
Matt A. Tobin
5cef146d97 Bug 1415843 - Remove an unneeded call to AdjustAppendParentForAfterContent
Tag #1375
2020-04-18 07:05:56 +08:00
Matt A. Tobin
b67dd1398d Bug 1415538 - Remove dead frame construction code (InsertFirstLineFrames)
Tag #1375
2020-04-18 07:05:53 +08:00
Matt A. Tobin
40ada5fa00 Bug 1415152 - No need for AdjustAppendForAfter, since ::after is handled in FindNextSibling
Tag #1375
2020-04-18 07:05:50 +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
9b5061e795 Bug 979782 - Implement lazy frame construction for display:contents descendants
* Fixup FindFrameForContentSibling to don't duplicate work and trigger assertions for display: contents
* Enable lazy frame construction for display: contents direct descendants

Tag #1375
2020-04-18 07:05:44 +08:00
Matt A. Tobin
7de52e46d3 Bug 1380749 - Retry AdjustAppendParentForAfterContent in case |parentAfterFrame| was a :first-letter frame that we deleted
Tag #1375
2020-04-18 07:05:42 +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
d3c2a6b6b5 Bug 1381134 - Ensure we're using the correct frame for the :after/:before references
Tag #1375
2020-04-18 07:05:13 +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
a665a8796a Bug 1400777 - Slim down nsElementTable.h
* Remove eHTMLTags
* De-expose HTML group constants[]
* De-expose gHTMLElements[]
* Split nsHTMLElement
* Clean up nsElementTable.{cpp,h}
* Fixup for eHTMLTag removal in Parser

Tag #1375
2020-04-18 07:05:00 +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
390ef42e80 Bug 1394300 - Streamline nsElementTable.cpp
Tag #1375
2020-04-18 07:04:50 +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
a25be6bc13 Bug 1382357 - Wait to destroy frames until after we've successfully fetched the binding
Tag #1375
2020-04-18 07:04:42 +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
Matt A. Tobin
84d3b44b86 Bug 1377648 - Fix HTMLSummaryElement::IsSummary() on removing the element
* Use inFlowFrame to check the target frame is summary and its parent is details
* Check summary frame instead of summary element on removing the summary

Tag #1375
2020-04-18 07:04:35 +08:00
Matt A. Tobin
9b868f0298 Bug 1368547 - Remove nsFrameManagerBase::mPlaceholderMap and instead store the placeholder on a frame property on the out-of-flow
Tag #1375
2020-04-18 07:04:32 +08:00
Matt A. Tobin
854827bd83 Bug 1368802 - nsFrameIterator::GetPlaceholderFrame should only try to get the placeholder for out-of-flow frames, because in-flow frames never have a placeholder
Tag #1375
2020-04-18 07:04:29 +08:00
Matt A. Tobin
3b2a22f085 Bug 1373798 - Move HTML dir attribute state into event state flags
* Stop calling SetHasDirAuto/ClearHasDirAuto in input element code
* Introduce event state flags that track the state of an element's dir attribute
* Rewrite our existing checks for the state of the dir attr on top of the new event state flags
* Add pseudo-classes for matching on the dir attribute states
* Use the new dir attribute pseudoclasses in html.css

Tag #1375
2020-04-18 07:04:25 +08:00
Matt A. Tobin
4e14355697 Bug 1372829 - Part 2: mozilla::EditorBase should cache raw pointer of nsISelectionController and nsIDocument with nsWeakPtr
Tag #1375
2020-04-18 07:04:22 +08:00
Matt A. Tobin
5d444ef68a Bug 1332353 - Make it clearer when a stylesheet is really owned by its mDocument
Tag #1375
2020-04-18 07:04:19 +08:00
Matt A. Tobin
db34da8e01 Bug 1372829 - Part 1: Make mozilla::PlaceholderTransaction inherit mozilla::SupportsWeakPtr instead of nsSupportsWeakReference
Tag #1375
2020-04-18 07:04:14 +08:00
Matt A. Tobin
8e7852efa2 Bug 1371170 - Add non-virtual EditorBase::GetSelectionController
Tag #1375
2020-04-18 07:04:10 +08:00
Matt A. Tobin
32e4ad01e3 Bug 1337698 - Use UniquePtr instead of nsAutoPtr in editor
* PlaceholderTransaction should use UniquePtr
* HTMLEditor should use UniquePtr
* TypeInState should use UniquePtr

Tag #1375
2020-04-18 07:04:07 +08:00
Matt A. Tobin
6aa436b588 Bug 1365092 - Move side effects of SetAttr and ParseAttribute to BeforeSetAttr and AfterSetAttr
* Moves side effects of nsGenericHTMLElement and Element's SetAttr, UnsetAttr, and ParseAttribute functions to the corresponding BeforeSetAttr and AfterSetAttr functions
* Moves side effects of HTMLAnchorElement's SetAttr, UnsetAttr, and ParseAttribute functions to the corresponding BeforeSetAttr and AfterSetAttr functions
* Moves side effects of HTMLImageElement's SetAttr function to the corresponding BeforeSetAttr and AfterSetAttr functions
* Moves side effects of SetAttr, UnsetAttr, and ParseAttribute functions to BeforeSetAttr and AfterSetAttr

Tag #1375
2020-04-18 07:04:04 +08:00
Matt A. Tobin
9d8343e19c Bug 1367683 - Optimize initializing nsRange
Tag #1375
2020-04-18 07:04:01 +08:00