зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1266131 part 1 - [css-grid] 'order' doesn't apply to grid-aligned abs.pos. descendants (anymore). r=dholbert
This commit is contained in:
Родитель
adbc189b42
Коммит
91532abbc2
|
@ -5213,15 +5213,6 @@ nsGridContainerFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
|
|||
// Our children are all grid-level boxes, which behave the same as
|
||||
// inline-blocks in painting, so their borders/backgrounds all go on
|
||||
// the BlockBorderBackgrounds list.
|
||||
// Also, we capture positioned descendants so we can sort them by
|
||||
// CSS 'order'.
|
||||
nsDisplayList positionedDescendants;
|
||||
nsDisplayListSet childLists(aLists.BlockBorderBackgrounds(),
|
||||
aLists.BlockBorderBackgrounds(),
|
||||
aLists.Floats(),
|
||||
aLists.Content(),
|
||||
&positionedDescendants,
|
||||
aLists.Outlines());
|
||||
typedef GridItemCSSOrderIterator::OrderState OrderState;
|
||||
OrderState order = HasAnyStateBits(NS_STATE_GRID_NORMAL_FLOW_CHILDREN_IN_CSS_ORDER)
|
||||
? OrderState::eKnownOrdered
|
||||
|
@ -5230,11 +5221,9 @@ nsGridContainerFrame::BuildDisplayList(nsDisplayListBuilder* aBuilder,
|
|||
GridItemCSSOrderIterator::eIncludeAll, order);
|
||||
for (; !iter.AtEnd(); iter.Next()) {
|
||||
nsIFrame* child = *iter;
|
||||
BuildDisplayListForChild(aBuilder, child, aDirtyRect, childLists,
|
||||
BuildDisplayListForChild(aBuilder, child, aDirtyRect, aLists,
|
||||
::GetDisplayFlagsForGridItem(child));
|
||||
}
|
||||
positionedDescendants.SortByCSSOrder();
|
||||
aLists.PositionedDescendants()->AppendToTop(&positionedDescendants);
|
||||
}
|
||||
|
||||
bool
|
||||
|
|
|
@ -32,7 +32,7 @@ fails == grid-whitespace-handling-1b.xhtml grid-whitespace-handling-1-ref.xhtml
|
|||
== grid-abspos-items-013.html grid-abspos-items-013-ref.html
|
||||
== grid-abspos-items-014.html grid-abspos-items-014-ref.html
|
||||
== grid-abspos-items-015.html grid-abspos-items-015-ref.html
|
||||
== grid-order-abspos-items-001.html grid-order-abspos-items-001-ref.html
|
||||
!= grid-order-abspos-items-001.html grid-order-abspos-items-001-ref.html
|
||||
== grid-order-placement-auto-001.html grid-order-placement-auto-001-ref.html
|
||||
fuzzy-if(skiaContent,1,200) == grid-order-placement-definite-001.html grid-order-placement-definite-001-ref.html
|
||||
skip-if(Android) == grid-placement-definite-implicit-001.html grid-placement-definite-implicit-001-ref.html
|
||||
|
|
Загрузка…
Ссылка в новой задаче