38 Commits

Author SHA1 Message Date
Moonchild c198ef11b9 [layout] Ensure we set the primary frame for native anon content where needed. 2021-07-15 04:11:48 +00:00
Moonchild aa0fd3d68c Issue #1751 -- Remove XP_MACOSX conditionals from /layout 2021-05-03 12:26:37 +00:00
athenian200 82cb11de19 Issue #1757 - Reinstate "dom.details_element.enabled" preference
The removal of this preference was botched, all other surrounding plumbing changes appear to be working okay. The ability to use prefs to control this stylesheet might be useful in the future, so perhaps this is one of those "if it ain't broke, don't fix it" bugs where leaving well enough alone in the first place would have been the best choice.
2021-03-31 17:57:48 -05:00
Moonchild c5ad76a287 Issue #1515 - Add null check to nsCSSFrameConstructor::IsValidSibling
With the changes to layout for WebComponents, it is now apparently possible to
pass in null for frame tree items to this function, which would cause a null
deref crash if not checked.
2021-02-03 11:10:44 +00:00
Moonchild 0e6a9cc60a Issue #1705 - Part 3: Rename ScrollbarStyles to ScrollStyles.
ScrollbarStyles contains values of overflow, (over)scroll-behavior, etc.
The only one which is marginally related to scroll _bars_ is overflow, which can
be used to hide scrollbar (by making an element not scrollable) or enforce the
scrollbar to display.

It makes more sense to be called ScrollStyles as it's mainly concerning behavior
of scrolling, not scrollbars. Also, with the addition of scrollbar width
properties, the current name can be confusing.
2021-01-06 16:31:36 +00:00
Moonchild ae2a160348 Issue #1053 - Part 2a: Remove android from /layout (partial)
This removes android code from base, build, forms, generic, inspector, style,
printing, tools and xul.
2020-12-26 10:16:55 +00:00
athenian200 6b2c3b61b1 Issue #1641 - Implement CSS flow-root keyword
This is just a clean port of 1322191 and follow-up 1325970. It really seems to add create a new way to access existing code relating to block formatting and floating elements rather than implementing new functionality, and it is mercifully straightforwards.
2020-09-03 18:55:28 -05:00
Matt A. Tobin b93fb57514 Bug 1426536 - Remove nsContentUtils::IsContentInsertionPoint
Tag #1375
2020-04-17 07:36:25 -04:00
Matt A. Tobin 38056aa9c9 Bug 1419762 - Return the inline continuation of an IB split when appending
Tag #1375
2020-04-17 07:29:19 -04:00
Matt A. Tobin 003e537dcb Bug 1419964 - Remove AdjustParentFrameForAfterContent
Tag #1375
2020-04-17 07:22:58 -04:00
Matt A. Tobin a2cdb9f91a Bug 1415843 - Remove an unneeded call to AdjustAppendParentForAfterContent
Tag #1375
2020-04-17 07:22:26 -04:00
Matt A. Tobin e5ca4ada99 Bug 1415538 - Remove dead frame construction code (InsertFirstLineFrames)
Tag #1375
2020-04-17 07:21:26 -04:00
Matt A. Tobin 03a898fca7 Bug 1415152 - No need for AdjustAppendForAfter, since ::after is handled in FindNextSibling
Tag #1375
2020-04-17 07:20:50 -04:00
Matt A. Tobin ee4857f209 Bug 1413619 - Fix insertion point computation when display: contents pseudos are involved.
Tag #1375
2020-04-17 07:20:06 -04:00
Matt A. Tobin 352fe83985 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-17 07:19:16 -04:00
Matt A. Tobin 14bb98e175 Bug 1380749 - Retry AdjustAppendParentForAfterContent in case |parentAfterFrame| was a :first-letter frame that we deleted
Tag #1375
2020-04-17 07:17:52 -04:00
Matt A. Tobin 55d83ea6f9 Bug 1381134 - Ensure we're using the correct frame for the :after/:before references
Tag #1375
2020-04-17 06:38:06 -04:00
Matt A. Tobin e482e335bb Bug 1389743 - Only reconstruct frames synchronously from ContentRemoved when called from frame construction
Tag #1375
2020-04-17 06:14:10 -04:00
Matt A. Tobin 53428ad3f0 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-17 06:09:37 -04:00
Matt A. Tobin 0c99ad16fb Bug 1368547 - Remove nsFrameManagerBase::mPlaceholderMap and instead store the placeholder on a frame property on the out-of-flow
Tag #1375
2020-04-17 06:07:51 -04:00
Matt A. Tobin 34e2c4054f Bug 1360157 - Assert that a display: contents child always has a parent
Tag #1375
2020-04-17 05:25:20 -04:00
Matt A. Tobin 7614fdb51b Bug 1355351 - Make pseudo-elements return the correct style via getComputedStyle
* Add a node property to access the ::before and ::after pseudo-elements
* Look for the frame for ::before and ::after pseudos
* Clean up pseudo-element props
* Simplify nsLayoutUtils callers, and make child iterators notice display: contents pseudos

Tag #1375
2020-04-17 05:10:25 -04:00
Matt A. Tobin 9f6cb6874e Bug 1296516 - Cleanup a bit of code in layout/base
* Tidy RestyleManager::ContentStateChanged
* Convert UndisplayedMap to a typed hashtable
* Cleanup infallible or unchecked nsCSSFrameConstructor methods

Tag #1375
2020-04-17 05:04:10 -04:00
Matt A. Tobin 0d362ca503 Bug 1330843 - Allow JS to create NAC pseudo-elements
Tag #1375
2020-04-17 05:01:17 -04:00
Matt A. Tobin de45820b64 Bug 1346623 - Allow anonymous content created with nsIDocument::InsertAnonymousContent can change from non-native to native AC
* Prevent canvas custom content from becoming NAC when reframing the root element
* Add an API to get computed style values through an AnonymousContent object

Tag #1375
2020-04-16 20:19:06 -04:00
Matt A. Tobin 4630e4abb5 Bug 1343879 - Be consistent about the parent style context the document-level anonymous content container should get: it should get no parent style context.
Tag #1375
2020-04-16 17:54:38 -04:00
Matt A. Tobin 1f5c67934f Bug 1343937 - Fix a crash in nsWrapperCache.h
* Implement and use GetInFlowParent
* Exempt scrollbar NAC from the new NAC semantics

Tag #1375
2020-04-16 17:52:30 -04:00
Matt A. Tobin 4375774c90 Bug 1331322 - Allow tagging of pseudo-implementing native anonymous content with the pseudo type at creation time
* Stop using a node bit for HasExplicitBaseURI
* Move MAY_HAVE_CLASS to mBoolFlags
* Add a flag to indicate that a node is native anonymous content
* Allow tagging of pseudo-implementing native anonymous content with the pseudo type at creation time, and eliminate explicit style contexts in nsIAnonymousContentCreator::ContentInfo

Tag #1375
2020-04-16 16:37:28 -04:00
Matt A. Tobin 4e2b4b9bc7 Bug 1334358 - Remove nsCSSFrameConstructor::CreateAnonymousFrames
Tag #1375
2020-04-14 23:27:56 -04:00
Matt A. Tobin e215bfbb80 Bug 1334247 - Remove nsIAnonymousContentCreator::CreateFrameFor
Tag #1375
2020-04-14 22:04:32 -04:00
wolfbeast d3067ffdda [CSS] Only emit non-GC chrome wrapped XUL box warnings in debug builds. 2020-02-14 19:09:13 +01:00
Gaming4JC bc8543bf79 Bug 1271549 - Remove details and summary preference.
Tag UXP Issue #1344
2020-01-26 15:50:08 -05:00
win7-7 00812e30df Attach FrameProperties to each frame instead of using a shared hashtable
Dispense the shared hashtable and instead attach the frame property list directly to nsIFrame.
2019-06-26 01:51:45 +03:00
trav90 96258a022a Only disallow lazy frame construction for direct children of display: contents elements 2018-12-09 09:45:24 -06:00
wolfbeast 6571d2ceb4 Remove MOZ_WIDGET_GONK [1/2]
Tag #288
2018-05-12 16:19:58 +02:00
janekptacijarabaci eae8d21428 moebius#138: Optimize operations on root of deeply-nested frame tree
https://github.com/MoonchildProductions/moebius/pull/138
2018-04-24 21:39:13 +02:00
janekptacijarabaci 8a15fd8d24 Bug 1286182: Implement the layout for <input type=date> 2018-02-14 14:41:19 +01:00
Matt A. Tobin 5f8de423f1 Add m-esr52 at 52.6.0 2018-02-02 04:16:08 -05:00