author | Mats Palmgren <mats@mozilla.com> |
Sat, 15 Sep 2018 01:30:18 +0200 | |
changeset 492240 | df4e19315cd308ce146ffb6dd81385b4e690833a |
parent 492239 | b2a536ba5d4bbf0be909652caee1d2d4d63ddcb4 |
child 492241 | 69980706914c31ea69ce66eaeacdfe0cae78ee8c |
push id | 9984 |
push user | ffxbld-merge |
push date | Mon, 15 Oct 2018 21:07:35 +0000 |
treeherder | mozilla-beta@183d27ea8570 [default view] [failures only] |
perfherder | [talos] [build metrics] [platform microbench] (compared to previous push) |
reviewers | dholbert |
bugs | 1490730 |
milestone | 64.0a1 |
first release with | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
last release without | nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
|
--- a/layout/generic/nsGridContainerFrame.cpp +++ b/layout/generic/nsGridContainerFrame.cpp @@ -4977,18 +4977,16 @@ nsGridContainerFrame::ReflowInFlowChild( const GridReflowInput& aState, const LogicalRect& aContentArea, ReflowOutput& aDesiredSize, nsReflowStatus& aStatus) { nsPresContext* pc = PresContext(); ComputedStyle* containerSC = Style(); WritingMode wm = aState.mReflowInput->GetWritingMode(); - LogicalMargin pad(aState.mReflowInput->ComputedLogicalPadding()); - const LogicalPoint padStart(wm, pad.IStart(wm), pad.BStart(wm)); const bool isGridItem = !!aGridItemInfo; MOZ_ASSERT(isGridItem == !aChild->IsPlaceholderFrame()); LogicalRect cb(wm); WritingMode childWM = aChild->GetWritingMode(); bool isConstrainedBSize = false; nscoord toFragmentainerEnd; // The part of the child's grid area that's in previous container fragments. nscoord consumedGridAreaBSize = 0; @@ -5041,24 +5039,24 @@ nsGridContainerFrame::ReflowInFlowChild( }; SetProp(eLogicalAxisBlock, isOrthogonal ? IBaselinePadProperty() : BBaselinePadProperty()); SetProp(eLogicalAxisInline, isOrthogonal ? BBaselinePadProperty() : IBaselinePadProperty()); } else { // By convention, for frames that perform CSS Box Alignment, we position // placeholder children at the start corner of their alignment container, - // and in this case that's usually the grid's padding box. + // and in this case that's usually the grid's content-box. // ("Usually" - the exception is when the grid *also* forms the // abs.pos. containing block. In that case, the alignment container isn't - // the padding box -- it's some grid area instead. But that case doesn't + // the content-box -- it's some grid area instead. But that case doesn't // require any special handling here, because we handle it later using a // special flag (STATIC_POS_IS_CB_ORIGIN) which will make us ignore the // placeholder's position entirely.) - cb = aContentArea - padStart; + cb = aContentArea; aChild->AddStateBits(PLACEHOLDER_STATICPOS_NEEDS_CSSALIGN); } LogicalSize reflowSize(cb.Size(wm)); if (isConstrainedBSize) { reflowSize.BSize(wm) = toFragmentainerEnd; } LogicalSize childCBSize = reflowSize.ConvertTo(childWM, wm);