Backed out changeset 61a168afa436 (bug 1387059) for unexpectedly passing web-platform-reftest /css/css-transforms-2/transform3d-sorting-001.html. r=backout

This commit is contained in:
Sebastian Hengst 2017-08-25 10:05:22 +02:00
Родитель cc0ea301c1
Коммит 7e5c12872d
4 изменённых файлов: 7 добавлений и 37 удалений

Просмотреть файл

@ -116,7 +116,6 @@ support-files = test_offsets.js
[test_picture_mutations.html]
[test_pointerPreserves3D.html]
[test_pointerPreserves3DClip.html]
[test_pointerPreserves3DPerspective.html]
[test_resource_timing.html]
[test_resource_timing_cross_origin.html]
[test_resource_timing_frameset.html]

Просмотреть файл

@ -1,29 +0,0 @@
<!DOCTYPE HTML>
<html>
<head>
<title>Test for pointer events with preserve-3d</title>
<script type="text/javascript" src="/tests/SimpleTest/SimpleTest.js"></script>
<link rel="stylesheet" type="text/css" href="/tests/SimpleTest/test.css" />
</head>
<body>
<div>
<div>
<div style="perspective: 100px; transform-style:preserve-3d; transform: translateX(100px)">
<div style="display:inline">
<div id="color" style="transform-style:flat; transform: translateX(-100px); display: block; background-color: blue; width: 200px; height: 200px;"></div>
</div>
</div>
</div>
</div>
<script class="testbody" type="text/javascript">
function runTest() {
var target = document.elementFromPoint(200, 200);
ok(target == document.getElementById("color"), "Find the right target.");
var target = document.elementFromPoint(16, 16);
ok(target == document.getElementById("color"), "Find the right target.");
}
runTest();
</script>
</body>
</html>

Просмотреть файл

@ -865,7 +865,7 @@ public:
* Gets the primary frame of the Content's flattened tree
* parent, if one exists.
*/
nsIFrame* GetFlattenedTreeParentPrimaryFrame() const;
inline nsIFrame* GetFlattenedTreeParentPrimaryFrame() const;
/**
* Return the placeholder for this frame (which must be out-of-flow).

Просмотреть файл

@ -2508,7 +2508,7 @@ void nsDisplayList::HitTest(nsDisplayListBuilder* aBuilder, const nsRect& aRect,
(itemType == DisplayItemType::TYPE_TRANSFORM &&
static_cast<nsDisplayTransform*>(item)->IsParticipating3DContext()) ||
(itemType == DisplayItemType::TYPE_PERSPECTIVE &&
static_cast<nsDisplayPerspective*>(item)->TransformFrame()->Extend3DContext());
item->Frame()->Extend3DContext());
if (same3DContext &&
(itemType != DisplayItemType::TYPE_TRANSFORM ||
!static_cast<nsDisplayTransform*>(item)->IsLeafOf3DContext())) {
@ -7529,11 +7529,11 @@ nsDisplayTransform::GetResultingTransformMatrixInternal(const FrameTransformProp
if ((aFlags & INCLUDE_PRESERVE3D_ANCESTORS) &&
frame && frame->Combines3DTransformWithAncestors()) {
// Include the transform set on our parent
nsIFrame* parentFrame = frame->GetFlattenedTreeParentPrimaryFrame();
NS_ASSERTION(parentFrame && parentFrame->IsTransformed() &&
parentFrame->Extend3DContext(),
NS_ASSERTION(frame->GetParent() &&
frame->GetParent()->IsTransformed() &&
frame->GetParent()->Extend3DContext(),
"Preserve3D mismatch!");
FrameTransformProperties props(parentFrame,
FrameTransformProperties props(frame->GetParent(),
aAppUnitsPerPixel,
nullptr);
@ -7778,7 +7778,7 @@ nsDisplayTransform::GetAccumulatedPreserved3DTransform(nsDisplayListBuilder* aBu
const nsIFrame* establisher; // Establisher of the 3D rendering context.
for (establisher = mFrame;
establisher && establisher->Combines3DTransformWithAncestors();
establisher = establisher->GetFlattenedTreeParentPrimaryFrame()) {
establisher = nsLayoutUtils::GetCrossDocParentFrame(establisher)) {
}
const nsIFrame* establisherReference =
aBuilder->FindReferenceFrameFor(nsLayoutUtils::GetCrossDocParentFrame(establisher));