зеркало из https://github.com/mozilla/gecko-dev.git
Bug 1443518 - Fix incorrect CompositorHitTestInfo ordering for inline lines r=mattwoodrow
MozReview-Commit-ID: D7yLNHQN3z0 --HG-- extra : rebase_source : 34f2f668bcdd8e0bc9741b879e696608345fdca3
This commit is contained in:
Родитель
cc208144a3
Коммит
3356f300e6
|
@ -3769,12 +3769,6 @@ nsIFrame::BuildDisplayListForChild(nsDisplayListBuilder* aBuilder,
|
|||
|
||||
child->MarkAbsoluteFramesForDisplayList(aBuilder);
|
||||
|
||||
const bool differentAGR =
|
||||
buildingForChild.IsAnimatedGeometryRoot() || isPositioned;
|
||||
nsDisplayList* toList = isPositioned ? &list : aLists.BorderBackground();
|
||||
|
||||
aBuilder->BuildCompositorHitTestInfoIfNeeded(child, toList, differentAGR);
|
||||
|
||||
if (aBuilder->IsBuildingLayerEventRegions()) {
|
||||
// If this frame has a different animated geometry root than its parent,
|
||||
// make sure we accumulate event regions for its layer.
|
||||
|
@ -3799,6 +3793,9 @@ nsIFrame::BuildDisplayListForChild(nsDisplayListBuilder* aBuilder,
|
|||
}
|
||||
}
|
||||
|
||||
const bool differentAGR =
|
||||
buildingForChild.IsAnimatedGeometryRoot() || isPositioned;
|
||||
|
||||
if (!awayFromCommonPath && shortcutPossible &&
|
||||
!differentAGR && !buildingForChild.MaybeAnimatedGeometryRoot()) {
|
||||
// The shortcut is available for the child for next time.
|
||||
|
@ -3810,6 +3807,10 @@ nsIFrame::BuildDisplayListForChild(nsDisplayListBuilder* aBuilder,
|
|||
// Not a pseudo or real stacking context. Do the simple thing and
|
||||
// return early.
|
||||
|
||||
aBuilder->BuildCompositorHitTestInfoIfNeeded(child,
|
||||
aLists.BorderBackground(),
|
||||
differentAGR);
|
||||
|
||||
aBuilder->AdjustWindowDraggingRegion(child);
|
||||
child->BuildDisplayList(aBuilder, aLists);
|
||||
aBuilder->DisplayCaret(child, aLists.Content());
|
||||
|
@ -3824,6 +3825,11 @@ nsIFrame::BuildDisplayListForChild(nsDisplayListBuilder* aBuilder,
|
|||
// stacking context's positioned descendant list, because they might be
|
||||
// z-index:non-auto
|
||||
nsDisplayListCollection pseudoStack(aBuilder);
|
||||
|
||||
aBuilder->BuildCompositorHitTestInfoIfNeeded(child,
|
||||
pseudoStack.BorderBackground(),
|
||||
differentAGR);
|
||||
|
||||
aBuilder->AdjustWindowDraggingRegion(child);
|
||||
nsDisplayListBuilder::AutoContainerASRTracker contASRTracker(aBuilder);
|
||||
child->BuildDisplayList(aBuilder, pseudoStack);
|
||||
|
|
Загрузка…
Ссылка в новой задаче