Commit graph

114 commits

Author SHA1 Message Date
Moonchild
9305760571 Issue #1656 - Part 9: Single-line-comment style. 2020-09-25 22:07:00 +08:00
Moonchild
d5919942ff Issue #1656 - Part 8: Devtools and misc. 2020-09-25 22:06:55 +08:00
Moonchild
0cd673d720 Issue #1656 - Part 6: Clean up the build files 2020-09-25 22:04:23 +08:00
Moonchild
538b420319 Issue #1656 - Part 4: Manual cleanup 2020-09-25 22:04:20 +08:00
Moonchild
30df895eb2 Issue #1656 - Part 3: Nuke more vim config lines in the tree.
Another S&R run with some smarter matching.
2020-09-25 22:04:17 +08:00
Moonchild
8c395520d9 Issue #1656 - Part 1: Nuke most vim config lines in the tree.
Since these are just interpreted comments, there's 0 impact on actual code.
This removes all lines that match /* vim: set(.*)tw=80: */ with S&R -- there are
a few others scattered around which will be removed manually in a second part.
2020-09-25 22:04:12 +08:00
Moonchild
78bcb176ea Issue #1655: Update MediaQueryList to the current draft spec.
This make MediaQueryList inherit from EventTarget and adds MediaQueryListEvent
as an interface as well as the onchange() method.
This should not affect compatibility with other code; the event object is a
MediaQueryListEvent instance, which is recognized as a MediaListQuery instance.
2020-09-25 22:04:07 +08:00
Moonchild
57d143dc6e Issue #1643 - Part 4: Hook up all the plumbing. 2020-09-18 20:53:16 +08:00
athenian200
9532970df5 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-04 22:31:00 +08:00
Andy
777b3cc622 Issue #1619 - Missing Dimension Computation
This existed in Firefox before this bug.
I don't know if it came from a previous bug or was removed post-fork.
2020-08-06 10:23:09 +08:00
Andy
3c02d3fc0d Issue #1619 - Convert Intrinsic Ratio to Float
https://bugzilla.mozilla.org/show_bug.cgi?id=1547792

Aspect Ratio handling simplified by using floating point integers:
- Multiplication of value (or inverse value) to a known side for Scaling
- No unequal equal values such as "4/3" vs "8/6" vs "20/15"
- Truly "Empty" aspect ratios, even if one dimension is not 0
2020-08-06 10:23:07 +08:00
Moonchild
a13f638d23 [printing] Fix build bustage with --disable-printing 2020-05-23 06:57:02 +08:00
win7-7
c399e1938f Issue #1545 - Fix border-radius on table row groups, rows, column groups, or columns
Before issue #146, border-radius on row groups, rows, column groups, or columns don't apply to the background of each cell, yet the border-radius on the cell itself does.

After issue #146, the behaviors changed. In this patch, I tried to revert the behaviors of border-radius on table row groups, rows, column groups, or columns back to what happened before issue #146.

Also: Don't override GetBorderRadii in nsBCTableCellFrame.
2020-05-16 06:49:41 +08:00
win7-7
e87c06beb3 Issue #1355 - Fix the nit, remove nsPoint offset in nsFrame.cpp and change PresShellState member order 2020-05-16 06:48:49 +08:00
win7-7
9c783146b2 Issue #1355 - Better way to create display items for column backgrounds
Part 1: Remove current table item, as it's never set.

Part 2: Get rid of generic table painting code, and handle each class separately.

Part 4: Hoist outline skipping into col(group) frame code.

Part 5: Skip box-shadow for table column and column groups.

Part 6: Store column and column group backgrounds separately, and then append them before the rest of the table contents.

Part 7: Pass rects in display list coordinates to AppendBackgroundItemsToTop.

Part 8: Create column and column group background display items as part of the cell's BuildDisplayList.

Part 9: Used cached values instead of calling nsDisplayListBuilder::ToReferenceFrame when possible, since it can be expensive when the requested frame isn't the builder's current frame.

Part 10: Make sure we build display items for table parts where only the normal position is visible, since we may need to create background items for ancestors at that position.

Part 11: Create an AutoBuildingDisplayList when we create background items for table columns and column groups, so that we initialize the invalidation state correctly.
2020-05-16 06:48:45 +08:00
win7-7
da0e3a828b Issue #1355 - Avoid unnecessary work in nsIFrame::BuildDisplayListForStackingContext() and nsIFrame::BuildDisplayListForChild() and Cleanup DescendIntoChild
Bug 1441796 - Part 1: Optimize the (pseudo)-stacking context conditions

Bug 1441796 - Part 3: Reuse the results in nsIFrame::BuildDisplayListForStackingContext() for ChildrenHavePerspective(), IsTransformed(), and Combines3DTransformWithAncestors()

Bug 1512244 - Part 1: Cleanup DescendIntoChild
2020-05-16 06:48:40 +08:00
win7-7
e15b1ba0ec Issue #1355 - Preemptively fix build bustage for 1409114 2020-05-16 06:48:36 +08:00
win7-7
85b85bac28 Issue #1355 - Store the dirty rect on the display list builder rather than passing it as a parameter to BuildDisplayList
Also fix build bustage for De-unified layout/xul in nsRootBoxFrame.cpp
2020-05-16 06:48:33 +08:00
adeshkp
d7d96314fe Issue #80 - Include nsIContentInlines.h in layout/base/PositionedEventTargeting.cpp 2020-05-02 08:28:47 +08:00
Moonchild
118743b970 Issue #80 - De-unify layout/base 2020-05-02 08:28:22 +08:00
Matt A. Tobin
d9112daf48 Bug 1426536 - Remove nsContentUtils::IsContentInsertionPoint
Tag #1375
2020-04-18 07:06:29 +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
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
cedff6e214 Bug 1416999 - Remove document.registerElement
Tag #1375
2020-04-18 07:05:32 +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
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
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
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
658bd351a0 Bug 1361086 - Simplify UndisplayedMap::GetListFor/GetOrCreateListFor to take nsIContent* rather than nsIContent**
Tag #1375
2020-04-18 07:03:51 +08:00
Matt A. Tobin
34d576d55d Bug 1360157 - Assert that a display: contents child always has a parent
Tag #1375
2020-04-18 07:03:49 +08:00
Matt A. Tobin
d3ffda520f 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-18 07:03:44 +08:00
Matt A. Tobin
e1195a86e0 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-18 07:03:34 +08:00
Matt A. Tobin
c37b4d0c63 Bug 1330843 - Allow JS to create NAC pseudo-elements
Tag #1375
2020-04-18 07:03:31 +08:00
Matt A. Tobin
fda213de85 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-18 07:03:28 +08:00
Matt A. Tobin
87bc2cab4e 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-18 07:03:18 +08:00
Matt A. Tobin
8e51f64cad Bug 1343937 - Fix a crash in nsWrapperCache.h
* Implement and use GetInFlowParent
* Exempt scrollbar NAC from the new NAC semantics

Tag #1375
2020-04-18 07:03:11 +08:00
Matt A. Tobin
b723a5c8c4 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-18 07:03:03 +08:00
Matt A. Tobin
5b8f93694a Bug 1334358 - Remove nsCSSFrameConstructor::CreateAnonymousFrames
Tag #1375
2020-04-18 07:02:57 +08:00
Matt A. Tobin
499252b89f Bug 1334247 - Remove nsIAnonymousContentCreator::CreateFrameFor
Tag #1375
2020-04-18 07:02:54 +08:00
wolfbeast
db9dde67b9 Issue #1507 - Remove nsRefreshDriver's use of high res system timers.
Since we are using vsync for timing anyway in the layout refresh driver,
there is no need to bump the system timer resolution down to 1 ms.

This resolves #1507.
2020-04-11 09:40:25 +08:00