import changes from `dev' branch of rmottola/Arctic-Fox:

- Bug 1155478 - Use smart pointers for three members of nsIPresShell; r=roc (5ebb5e433)
- Bug 1150614: place floats correctly in vertical writing modes with dir="rtl", r=jfkthame (020ca8893)
- Tests for bug 1150614, r=jfkthame (edba1ffeb)
- Fix test regressions from bug 1150614, r=jfkthame (a68607adc)
- Bug 1162485 - Ensure the vertical-text.enabled pref is set for reftests that involve vertical writing modes. r=smontagu (948cb3a80)
- Bug 1167930 - Handle direction:rtl in vertical modes when converting a LogicalMargin to physical. r=smontagu (0ca0afe6e)
- Bug 1180643 - Fix the SetY() method on LogicalPoint to update the correct field. r=smontagu (3071253fd)
- Bug 1181087 - part 1 - Eliminate the few callers of physical-coordinate setters on the logical-coordinate geometry classes. r=smontagu (3462b41a8)
- Bug 1181087 - part 2 - Remove the unused physical setter methods on logical-coordinate classes. r=smontagu (0715086a8)
- Bug 1145218 - Make the float manager's writing-mode field debug-only, and assert that it matches what callers are passing in. r=smontagu (ee625acd2)
- Bug 756984 - Collapse the selection on the last text node on the line, skipping br and inline frames when clicking past the end of line; r=roc,ehsan (c4dcea1d6)
- Bug 1131451 part 1 - Replace containerWidth with containerSize in logical-coordinate classes and APIs, frame classes, etc. r=dholbert (ad4b55deb)
- Bug 1173646 part 1: Add reftest with flex items whose writing-mode differs from their flex container. r=mats (3dd3d7f97)
- Bug 1173646 part2: Add reftest variants with different writing-mode values on flex container. (no review) (0c82aad87)
- Bug 1173646 part 3: Make FlexItems cache their WritingMode, for quick access. r=mats (7398c33a6)
- Bug 1173646 part 4: Convert isize/bsize into flex container's writing-mode in flexbox macros that aim to pick a main-axis or cross-axis value. r=mats (80ebd414e)
- Bug 1155488 - Mark nsIPresShell::mHiddenInvalidationObserverRefreshDriver as MOZ_UNSAFE_REF; r=roc (10c98ad8f)
- Bug 1156008 - Convert CapturingContentInfo::mContent to StaticRefPtr; r=roc (9ffee3ef4)
- Bug 1177690 - part 3 - Reftests for bevelled corners on collapsed table border. r=dholbert (26e3aff00)
- Bug 1131451 part 2 - Respect the container height when converting vertical-RTL inline-direction coordinates. r=dholbert (594340514)
- Bug 1131451 followup - Remove one more bidi-in-vertical-mode hack that is no longer required. r=dholbert (696b0194f)
- Bug 1183896. Don't assume that relatively positioned table cells actually have positioned offsets computed, because in the case of position:sticky they don't. r=dholbert (remaining parts of rev c87f3d591) (f868b8a64)
This commit is contained in:
2021-03-08 09:15:06 +08:00
parent 0f991de4b6
commit 8cd81a8615
117 changed files with 2587 additions and 853 deletions
+7 -5
View File
@@ -320,11 +320,12 @@ nsHTMLButtonControlFrame::ReflowButtonContents(nsPresContext* aPresContext,
childPos.B(wm) = 0; // This will be set properly later, after reflowing the
// child to determine its size.
// We just pass 0 for containerWidth here, as the child will be repositioned
// later by FinishReflowChild.
// We just pass a dummy containerSize here, as the child will be
// repositioned later by FinishReflowChild.
nsSize dummyContainerSize;
ReflowChild(aFirstKid, aPresContext,
contentsDesiredSize, contentsReflowState,
wm, childPos, 0, 0, contentsReflowStatus);
wm, childPos, dummyContainerSize, 0, contentsReflowStatus);
MOZ_ASSERT(NS_FRAME_IS_COMPLETE(contentsReflowStatus),
"We gave button-contents frame unconstrained available height, "
"so it should be complete");
@@ -373,12 +374,13 @@ nsHTMLButtonControlFrame::ReflowButtonContents(nsPresContext* aPresContext,
// its focus-padding rect:
childPos.B(wm) += focusPadding.BStart(wm) + clbp.BStart(wm);
nscoord containerWidth = buttonContentBox.Width(wm) + clbp.LeftRight(wm);
nsSize containerSize =
(buttonContentBox + clbp.Size(wm)).GetPhysicalSize(wm);
// Place the child
FinishReflowChild(aFirstKid, aPresContext,
contentsDesiredSize, &contentsReflowState,
wm, childPos, containerWidth, 0);
wm, childPos, containerSize, 0);
// Make sure we have a useful 'ascent' value for the child
if (contentsDesiredSize.BlockStartAscent() ==