зеркало из https://github.com/mozilla/gecko-dev.git
Backed out 2 changesets (bug 1491864) for test_pointerPreserves3DPerspective.html failures. CLOSED TREE
Backed out changeset 8a4b3376e5c4 (bug 1491864) Backed out changeset 43fdb0259352 (bug 1491864)
This commit is contained in:
Родитель
0f49c56e72
Коммит
2c72511a34
|
@ -1604,7 +1604,7 @@ bool
|
|||
nsIFrame::Combines3DTransformWithAncestors(const nsStyleDisplay* aStyleDisplay) const
|
||||
{
|
||||
MOZ_ASSERT(aStyleDisplay == StyleDisplay());
|
||||
nsIFrame* parent = GetInFlowParentIgnoringAnonBoxes();
|
||||
nsIFrame* parent = GetInFlowParent();
|
||||
if (!parent || !parent->Extend3DContext()) {
|
||||
return false;
|
||||
}
|
||||
|
@ -2625,9 +2625,9 @@ FrameParticipatesIn3DContext(nsIFrame* aAncestor, nsIFrame* aDescendant) {
|
|||
MOZ_ASSERT(aAncestor != aDescendant);
|
||||
MOZ_ASSERT(aAncestor->Extend3DContext());
|
||||
nsIFrame* frame;
|
||||
for (frame = aDescendant->GetInFlowParentIgnoringAnonBoxes();
|
||||
for (frame = aDescendant->GetInFlowParent();
|
||||
frame && aAncestor != frame;
|
||||
frame = frame->GetInFlowParentIgnoringAnonBoxes()) {
|
||||
frame = frame->GetInFlowParent()) {
|
||||
if (!frame->Extend3DContext()) {
|
||||
return false;
|
||||
}
|
||||
|
|
|
@ -867,18 +867,12 @@ public:
|
|||
/**
|
||||
* Gets the parent of a frame, using the parent of the placeholder for
|
||||
* out-of-flow frames.
|
||||
*/
|
||||
inline nsContainerFrame* GetInFlowParent() const;
|
||||
|
||||
/**
|
||||
* Gets the in-flow parent, skipping any anonymous box that we may find along
|
||||
* the way.
|
||||
*
|
||||
* This is effectively the primary frame (or one of the continuations) of the
|
||||
* closest flattened tree ancestor that has a frame (flattened tree ancestors
|
||||
* may not have frames in presence of display: contents).
|
||||
*/
|
||||
inline nsContainerFrame* GetInFlowParentIgnoringAnonBoxes() const;
|
||||
inline nsContainerFrame* GetInFlowParent() const;
|
||||
|
||||
/**
|
||||
* Return the placeholder for this frame (which must be out-of-flow).
|
||||
|
|
|
@ -180,14 +180,4 @@ nsIFrame::GetInFlowParent() const
|
|||
return GetParent();
|
||||
}
|
||||
|
||||
nsContainerFrame*
|
||||
nsIFrame::GetInFlowParentIgnoringAnonBoxes() const
|
||||
{
|
||||
nsContainerFrame* parent = GetInFlowParent();
|
||||
while (parent && parent->Style()->IsAnonBox()) {
|
||||
parent = parent->GetInFlowParent();
|
||||
}
|
||||
return parent;
|
||||
}
|
||||
|
||||
#endif
|
||||
|
|
|
@ -8377,7 +8377,7 @@ nsDisplayTransform::GetResultingTransformMatrixInternal(
|
|||
if ((aFlags & INCLUDE_PRESERVE3D_ANCESTORS) && frame &&
|
||||
frame->Combines3DTransformWithAncestors()) {
|
||||
// Include the transform set on our parent
|
||||
nsIFrame* parentFrame = frame->GetInFlowParentIgnoringAnonBoxes();
|
||||
nsIFrame* parentFrame = frame->GetInFlowParent();
|
||||
NS_ASSERTION(parentFrame && parentFrame->IsTransformed() &&
|
||||
parentFrame->Extend3DContext(),
|
||||
"Preserve3D mismatch!");
|
||||
|
@ -8656,7 +8656,7 @@ nsDisplayTransform::GetAccumulatedPreserved3DTransform(
|
|||
const nsIFrame* establisher; // Establisher of the 3D rendering context.
|
||||
for (establisher = mFrame;
|
||||
establisher && establisher->Combines3DTransformWithAncestors();
|
||||
establisher = establisher->GetInFlowParentIgnoringAnonBoxes()) {
|
||||
establisher = establisher->GetInFlowParent()) {
|
||||
}
|
||||
const nsIFrame* establisherReference = aBuilder->FindReferenceFrameFor(
|
||||
nsLayoutUtils::GetCrossDocParentFrame(establisher));
|
||||
|
|
|
@ -143185,18 +143185,6 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transforms/preserve3d-button.html": [
|
||||
[
|
||||
"/css/css-transforms/preserve3d-button.html",
|
||||
[
|
||||
[
|
||||
"/css/css-transforms/preserve3d-button-ref.html",
|
||||
"=="
|
||||
]
|
||||
],
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transforms/rotate/svg-rotate-3args-001.html": [
|
||||
[
|
||||
"/css/css-transforms/rotate/svg-rotate-3args-001.html",
|
||||
|
@ -265190,11 +265178,6 @@
|
|||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transforms/preserve3d-button-ref.html": [
|
||||
[
|
||||
{}
|
||||
]
|
||||
],
|
||||
"css/css-transforms/reference/backface-visibility-hidden-ref.html": [
|
||||
[
|
||||
{}
|
||||
|
@ -561829,14 +561812,6 @@
|
|||
"752888eaf76630ae9835dd444c4941793ecf53cc",
|
||||
"reftest"
|
||||
],
|
||||
"css/css-transforms/preserve3d-button-ref.html": [
|
||||
"e5e3c1ebfcdd7c832a211d17ac2f1ed6f4116252",
|
||||
"support"
|
||||
],
|
||||
"css/css-transforms/preserve3d-button.html": [
|
||||
"544bb2496638a52915f7c97a238ccb053b4e884e",
|
||||
"reftest"
|
||||
],
|
||||
"css/css-transforms/reference/backface-visibility-hidden-ref.html": [
|
||||
"6a3e305e5c0c7fca6c8d53574b7a09eb21afb6cc",
|
||||
"support"
|
||||
|
@ -598502,7 +598477,7 @@
|
|||
"support"
|
||||
],
|
||||
"fullscreen/api/document-exit-fullscreen-active-document.html": [
|
||||
"8279fae533774fcf6daced99ffc84413a0a9172d",
|
||||
"18b0bb6493bd8275a750091b862c7ee5ee770abf",
|
||||
"testharness"
|
||||
],
|
||||
"fullscreen/api/document-exit-fullscreen-manual.html": [
|
||||
|
@ -656326,7 +656301,7 @@
|
|||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/browsers/firefox.py": [
|
||||
"9f7ebfa2ca544616e2feaeb53c8af73220d7271a",
|
||||
"04f2ce84a41619a23e29d5436430b11fa2b6d7c5",
|
||||
"support"
|
||||
],
|
||||
"tools/wptrunner/wptrunner/browsers/ie.py": [
|
||||
|
@ -668662,7 +668637,7 @@
|
|||
"testharness"
|
||||
],
|
||||
"x-frame-options/multiple.sub.html": [
|
||||
"717e9fd25c51ee80f3adf029740d475790b3875e",
|
||||
"f7a28e40ee22be3493c3926e15c40d2e814ad2e4",
|
||||
"testharness"
|
||||
],
|
||||
"x-frame-options/redirect.sub.html": [
|
||||
|
|
|
@ -1,42 +0,0 @@
|
|||
<!doctype html>
|
||||
<title>CSS Test Reference</title>
|
||||
<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
|
||||
<link rel="author" title="Mozilla" href="https://mozilla.org">
|
||||
<style>
|
||||
.scene {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
perspective: 5000px;
|
||||
}
|
||||
|
||||
.card {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
transform-style: preserve-3d;
|
||||
position: relative;
|
||||
background: none;
|
||||
border: 0;
|
||||
padding: 0;
|
||||
transform: rotateY(180deg);
|
||||
}
|
||||
|
||||
.face {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
backface-visibility: hidden;
|
||||
background: red;
|
||||
}
|
||||
|
||||
.backface {
|
||||
background: green;
|
||||
transform: rotateY(180deg);
|
||||
}
|
||||
</style>
|
||||
<div class="scene">
|
||||
<div class="card">
|
||||
<div class="face"></div>
|
||||
<div class="face backface"></div>
|
||||
</div>
|
||||
</div>
|
|
@ -1,44 +0,0 @@
|
|||
<!doctype html>
|
||||
<title>CSS Test: preserve-3d on buttons</title>
|
||||
<link rel="author" title="Emilio Cobos Álvarez" href="mailto:emilio@crisal.io">
|
||||
<link rel="author" title="Mozilla" href="https://mozilla.org">
|
||||
<link rel="match" href="preserve3d-button-ref.html">
|
||||
<link rel="help" href="https://bugzilla.mozilla.org/show_bug.cgi?id=1491864">
|
||||
<style>
|
||||
.scene {
|
||||
width: 200px;
|
||||
height: 200px;
|
||||
perspective: 5000px;
|
||||
}
|
||||
|
||||
.card {
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
transform-style: preserve-3d;
|
||||
position: relative;
|
||||
background: none;
|
||||
border: 0;
|
||||
padding: 0;
|
||||
transform: rotateY(180deg);
|
||||
}
|
||||
|
||||
.face {
|
||||
position: absolute;
|
||||
top: 0;
|
||||
width: 100%;
|
||||
height: 100%;
|
||||
backface-visibility: hidden;
|
||||
background: red;
|
||||
}
|
||||
|
||||
.backface {
|
||||
background: green;
|
||||
transform: rotateY(180deg);
|
||||
}
|
||||
</style>
|
||||
<div class="scene">
|
||||
<button class="card">
|
||||
<div class="face"></div>
|
||||
<div class="face backface"></div>
|
||||
</button>
|
||||
</div>
|
Загрузка…
Ссылка в новой задаче