diff --git a/layout/base/nsCSSFrameConstructor.cpp b/layout/base/nsCSSFrameConstructor.cpp index 36206b6bed7c..61de9d54c819 100644 --- a/layout/base/nsCSSFrameConstructor.cpp +++ b/layout/base/nsCSSFrameConstructor.cpp @@ -2314,33 +2314,6 @@ nsIFrame* nsCSSFrameConstructor::ConstructDocElementFrame( return nullptr; } - if (aDocElement->IsHTMLElement() && - mDocElementContainingBlock->IsCanvasFrame()) { - // This implements "The Principal Writing Mode". - // https://drafts.csswg.org/css-writing-modes-3/#principal-flow - // - // If there's a element, its writing-mode, direction, and - // text-orientation override the root element's used value. - // - // We need to copy 's WritingMode to mDocElementContainingBlock before - // construct mRootElementFrame so that anonymous internal frames such as - // with table style can copy their parent frame's mWritingMode in - // nsFrame::Init(). - MOZ_ASSERT(!mRootElementFrame, - "We need to copy 's principal writing-mode before " - "constructing mRootElementFrame."); - - Element* body = mDocument->GetBodyElement(); - if (body) { - RefPtr bodyStyle = ResolveComputedStyle(body); - mDocElementContainingBlock->PropagateWritingModeToSelfAndAncestors( - WritingMode(bodyStyle)); - } else { - mDocElementContainingBlock->PropagateWritingModeToSelfAndAncestors( - mDocElementContainingBlock->GetWritingMode()); - } - } - nsFrameConstructorSaveState docElementContainingBlockAbsoluteSaveState; if (mHasRootAbsPosContainingBlock) { // Push the absolute containing block now so we can absolutely position @@ -6840,7 +6813,7 @@ void nsCSSFrameConstructor::ContentAppended(nsIContent* aFirstNewContent, } LAYOUT_PHASE_TEMP_EXIT(); - if (WipeInsertionParent(parentFrame, aFirstNewContent, nullptr)) { + if (WipeInsertionParent(parentFrame)) { LAYOUT_PHASE_TEMP_REENTER(); return; } @@ -7241,7 +7214,7 @@ void nsCSSFrameConstructor::ContentRangeInserted( } LAYOUT_PHASE_TEMP_EXIT(); - if (WipeInsertionParent(insertion.mParentFrame, aStartChild, aEndChild)) { + if (WipeInsertionParent(insertion.mParentFrame)) { LAYOUT_PHASE_TEMP_REENTER(); return; } @@ -8441,17 +8414,6 @@ bool nsCSSFrameConstructor::MaybeRecreateContainerForFrameRemoval( "placeholder for primary frame has previous continuations?"); nsIFrame* parent = inFlowFrame->GetParent(); - if (aFrame->GetContent() == mDocument->GetBodyElement()) { - // If the frame of the canonical body element is removed (either because of - // removing of the element, or removing for frame construction like - // writing-mode changed), we need to reframe the root element so that the - // root element's frames has the correct writing-mode propagated from body - // element. (See nsCSSFrameConstructor::ConstructDocElementFrame.) - TRACE("Root"); - RecreateFramesForContent(mDocument->GetRootElement(), InsertionKind::Async); - return true; - } - if (inFlowFrame->HasAnyStateBits(NS_FRAME_HAS_MULTI_COLUMN_ANCESTOR)) { nsIFrame* grandparent = parent->GetParent(); MOZ_ASSERT(grandparent); @@ -11382,34 +11344,13 @@ static bool IsSafeToAppendToIBSplitInline(nsIFrame* aParentFrame, return true; } -bool nsCSSFrameConstructor::WipeInsertionParent(nsContainerFrame* aFrame, - nsIContent* aStartChild, - nsIContent* aEndChild) { +bool nsCSSFrameConstructor::WipeInsertionParent(nsContainerFrame* aFrame) { #define TRACE(reason) \ PROFILER_TRACING("Layout", "WipeInsertionParent: " reason, LAYOUT, \ TRACING_EVENT) - MOZ_ASSERT(aStartChild, "Must always pass aStartChild!"); - const LayoutFrameType frameType = aFrame->Type(); - if (aFrame->GetContent() == mDocument->GetRootElement()) { - // If we insert a content that becomes the canonical body element, we need - // to reframe the root element so that the root element's frames has the - // correct writing-mode propagated from body element. (See - // nsCSSFrameConstructor::ConstructDocElementFrame.) - nsIContent* bodyElement = mDocument->GetBodyElement(); - for (nsIContent* child = aStartChild; child != aEndChild; - child = child->GetNextSibling()) { - if (child == bodyElement) { - TRACE("Root"); - RecreateFramesForContent(mDocument->GetRootElement(), - InsertionKind::Async); - return true; - } - } - } - // FIXME(emilio): This looks terribly inefficient if you insert elements deep // in a MathML subtree. if (aFrame->IsFrameOfType(nsIFrame::eMathML)) { diff --git a/layout/base/nsCSSFrameConstructor.h b/layout/base/nsCSSFrameConstructor.h index 7b5db594ef9a..00c312212911 100644 --- a/layout/base/nsCSSFrameConstructor.h +++ b/layout/base/nsCSSFrameConstructor.h @@ -1906,19 +1906,14 @@ class nsCSSFrameConstructor final : public nsFrameManager { // rebuild the entire subtree when we insert or append new content under // aFrame. // - // [aStartChild, aEndChild) is the range of the children to be inserted. - // aStartChild must be non-null; aEndChild may be null to indicate that we are - // appending the range includes all kids after aStartChild. - // // This is similar to WipeContainingBlock(), but is called before constructing - // any frame construction items. Any container frames which need reframing by - // checking only the content inserted or appended, not the style of the - // content, can add a check in this method. + // any frame construction items. Any container frames which need reframing + // regardless of the content inserted or appended can add a check in this + // method. // // @return true if we reconstructed the insertion parent frame; false // otherwise - bool WipeInsertionParent(nsContainerFrame* aFrame, nsIContent* aStartChild, - nsIContent* aEndChild); + bool WipeInsertionParent(nsContainerFrame* aFrame); // Determine whether we need to wipe out what we just did and start over // because we're doing something like adding block kids to an inline frame diff --git a/layout/generic/crashtests/1102175-2.html b/layout/generic/crashtests/1102175-2.html deleted file mode 100644 index 1f485f68d864..000000000000 --- a/layout/generic/crashtests/1102175-2.html +++ /dev/null @@ -1,47 +0,0 @@ - - - - CSS-Writing Modes Test: propagation of the writing-mode property from body to root - - - - - - - - - - - -
-

Test passes if you see a blue square in the upper-right corner of the page

- - diff --git a/layout/generic/crashtests/crashtests.list b/layout/generic/crashtests/crashtests.list index 8fa0e936676a..556c44a5e625 100644 --- a/layout/generic/crashtests/crashtests.list +++ b/layout/generic/crashtests/crashtests.list @@ -593,7 +593,6 @@ load 1042489.html load 1054010-1.html load 1058954-1.html skip-if(verify&&isDebugBuild&&(gtkWidget||OSX)) load 1059138-1.html -load 1102175-2.html load 1134531.html load 1134667.html load 1137723-1.html diff --git a/layout/generic/nsBlockFrame.cpp b/layout/generic/nsBlockFrame.cpp index 2adc207ff7c4..d4c0b33cef4b 100644 --- a/layout/generic/nsBlockFrame.cpp +++ b/layout/generic/nsBlockFrame.cpp @@ -7110,23 +7110,19 @@ void nsBlockFrame::Init(nsIContent* aContent, nsContainerFrame* aParent, } // A display:flow-root box establishes a block formatting context. - // - // If a box has a different writing-mode value than its containing block: + // If a box has a different block flow direction than its containing block: // ... // If the box is a block container, then it establishes a new block // formatting context. - // (https://drafts.csswg.org/css-writing-modes/#block-flow) + // (http://dev.w3.org/csswg/css-writing-modes/#block-flow) // // If the box has contain: paint or contain:layout (or contain:strict), // then it should also establish a formatting context. // // Per spec, a column-span always establishes a new block formatting context. if (StyleDisplay()->mDisplay == mozilla::StyleDisplay::FlowRoot || - (GetParent() && - (GetWritingMode().GetBlockDir() != - GetParent()->GetWritingMode().GetBlockDir() || - GetWritingMode().IsVerticalSideways() != - GetParent()->GetWritingMode().IsVerticalSideways())) || + (GetParent() && StyleVisibility()->mWritingMode != + GetParent()->StyleVisibility()->mWritingMode) || StyleDisplay()->IsContainPaint() || StyleDisplay()->IsContainLayout() || (StaticPrefs::layout_css_column_span_enabled() && IsColumnSpan())) { AddStateBits(NS_BLOCK_FORMATTING_CONTEXT_STATE_BITS); diff --git a/layout/generic/nsCanvasFrame.cpp b/layout/generic/nsCanvasFrame.cpp index 65d3036175fc..311d9d627756 100644 --- a/layout/generic/nsCanvasFrame.cpp +++ b/layout/generic/nsCanvasFrame.cpp @@ -247,6 +247,7 @@ void nsCanvasFrame::SetInitialChildList(ChildListID aListID, aChildList.OnlyChild(), "Primary child list can have at most one frame in it"); nsContainerFrame::SetInitialChildList(aListID, aChildList); + MaybePropagateRootElementWritingMode(); } void nsCanvasFrame::AppendFrames(ChildListID aListID, nsFrameList& aFrameList) { @@ -263,6 +264,7 @@ void nsCanvasFrame::AppendFrames(ChildListID aListID, nsFrameList& aFrameList) { nsFrame::VerifyDirtyBitSet(aFrameList); #endif nsContainerFrame::AppendFrames(aListID, aFrameList); + MaybePropagateRootElementWritingMode(); } void nsCanvasFrame::InsertFrames(ChildListID aListID, nsIFrame* aPrevFrame, @@ -272,6 +274,7 @@ void nsCanvasFrame::InsertFrames(ChildListID aListID, nsIFrame* aPrevFrame, // as appending MOZ_ASSERT(!aPrevFrame, "unexpected previous sibling frame"); AppendFrames(aListID, aFrameList); + MaybePropagateRootElementWritingMode(); } #ifdef DEBUG @@ -829,6 +832,15 @@ nsresult nsCanvasFrame::GetContentForEvent(WidgetEvent* aEvent, return rv; } +void nsCanvasFrame::MaybePropagateRootElementWritingMode() { + nsIFrame* child = PrincipalChildList().FirstChild(); + if (child && child->GetContent() && + child->GetContent() == PresContext()->Document()->GetRootElement()) { + nsIFrame* childPrimary = child->GetContent()->GetPrimaryFrame(); + PropagateRootElementWritingMode(childPrimary->GetWritingMode()); + } +} + #ifdef DEBUG_FRAME_DUMP nsresult nsCanvasFrame::GetFrameName(nsAString& aResult) const { return MakeFrameName(NS_LITERAL_STRING("Canvas"), aResult); diff --git a/layout/generic/nsCanvasFrame.h b/layout/generic/nsCanvasFrame.h index 9990646545de..3198657941ec 100644 --- a/layout/generic/nsCanvasFrame.h +++ b/layout/generic/nsCanvasFrame.h @@ -118,6 +118,10 @@ class nsCanvasFrame final : public nsContainerFrame, nsRect CanvasArea() const; protected: + // Utility function to propagate the WritingMode from our first child to + // 'this' and all its ancestors. + void MaybePropagateRootElementWritingMode(); + // Data members bool mDoPaintFocus; bool mAddedScrollPositionListener; diff --git a/layout/generic/nsFrame.cpp b/layout/generic/nsFrame.cpp index 470580470f21..f33d3fb21552 100644 --- a/layout/generic/nsFrame.cpp +++ b/layout/generic/nsFrame.cpp @@ -638,15 +638,6 @@ void nsFrame::Init(nsIContent* aContent, nsContainerFrame* aParent, PresContext()->ConstructedFrame(); } if (GetParent()) { - if (MOZ_UNLIKELY(mContent == PresContext()->Document()->GetRootElement() && - mContent == GetParent()->GetContent())) { - // Our content is the root element and we have the same content as our - // parent. That is, we are the internal anonymous frame of the root - // element. Copy the used mWritingMode from our parent because - // mDocElementContainingBlock gets its mWritingMode from . - mWritingMode = GetParent()->GetWritingMode(); - } - // Copy some state bits from our parent (the bits that should apply // recursively throughout a subtree). The bits are sorted according to their // order in nsFrameStateBits.h. diff --git a/layout/generic/nsIFrame.h b/layout/generic/nsIFrame.h index 7893d793d60b..c808e3b1e6a1 100644 --- a/layout/generic/nsIFrame.h +++ b/layout/generic/nsIFrame.h @@ -894,12 +894,8 @@ class nsIFrame : public nsQueryFrame { * It's usually the 'writing-mode' computed value, but there are exceptions: * * inner table frames copy the value from the table frame * (@see nsTableRowGroupFrame::Init, nsTableRowFrame::Init etc) - * * the root element frame propagates its value to its ancestors. - * The value may obtain from the principal element. - * (@see nsCSSFrameConstructor::ConstructDocElementFrame) - * * the internal anonymous frames of the root element copy their value - * from the parent. - * (@see nsFrame::Init) + * * the root element frame propagates its value to its ancestors + * (@see nsCanvasFrame::MaybePropagateRootElementWritingMode) * * a scrolled frame propagates its value to its ancestor scroll frame * (@see nsHTMLScrollFrame::ReloadChildFrames) */ @@ -4259,11 +4255,6 @@ class nsIFrame : public nsQueryFrame { mozilla::gfx::CompositorHitTestInfo GetCompositorHitTestInfo( nsDisplayListBuilder* aBuilder); - /** - * Copies aWM to mWritingMode on 'this' and all its ancestors. - */ - inline void PropagateWritingModeToSelfAndAncestors(mozilla::WritingMode aWM); - protected: static void DestroyAnonymousContent(nsPresContext* aPresContext, already_AddRefed&& aContent); @@ -4318,6 +4309,11 @@ class nsIFrame : public nsQueryFrame { } protected: + /** + * Copies aRootElemWM to mWritingMode on 'this' and all its ancestors. + */ + inline void PropagateRootElementWritingMode(mozilla::WritingMode aRootElemWM); + void MarkInReflow() { #ifdef DEBUG_dbaron_off // bug 81268 diff --git a/layout/generic/nsIFrameInlines.h b/layout/generic/nsIFrameInlines.h index c9ec80eb21aa..a4adf67ef434 100644 --- a/layout/generic/nsIFrameInlines.h +++ b/layout/generic/nsIFrameInlines.h @@ -144,11 +144,11 @@ nscoord nsIFrame::BaselineBOffset(mozilla::WritingMode aWM, return SynthesizeBaselineBOffsetFromBorderBox(aWM, aBaselineGroup); } -void nsIFrame::PropagateWritingModeToSelfAndAncestors( - mozilla::WritingMode aWM) { +void nsIFrame::PropagateRootElementWritingMode( + mozilla::WritingMode aRootElemWM) { MOZ_ASSERT(IsCanvasFrame()); for (auto f = this; f; f = f->GetParent()) { - f->mWritingMode = aWM; + f->mWritingMode = aRootElemWM; } } diff --git a/layout/reftests/bidi/817406-4-ref.html b/layout/reftests/bidi/817406-4-ref.html new file mode 100644 index 000000000000..e6e1c8d1fa47 --- /dev/null +++ b/layout/reftests/bidi/817406-4-ref.html @@ -0,0 +1,6 @@ + + + +
+ + diff --git a/layout/reftests/bidi/reftest.list b/layout/reftests/bidi/reftest.list index 72fdde15fb4f..91233b580f2c 100644 --- a/layout/reftests/bidi/reftest.list +++ b/layout/reftests/bidi/reftest.list @@ -141,7 +141,7 @@ random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 712600-3.html 712600-3-r == 817406-1.html 817406-1-ref.html == 817406-2.html 817406-2-ref.html == 817406-3.html 817406-1-ref.html -== 817406-4.html 817406-1-ref.html +== 817406-4.html 817406-4-ref.html == 847242-1.html 847242-1-ref.html pref(layout.css.xul-tree-pseudos.content.enabled,true) fuzzy-if(xulRuntime.widgetToolkit=="gtk",0-1,0-11) == chrome://reftest/content/bidi/869833-1.xul chrome://reftest/content/bidi/869833-1-ref.xul == 922530-1.html 922530-1-ref.html diff --git a/layout/reftests/w3c-css/failures.list b/layout/reftests/w3c-css/failures.list index 3403843e2f13..0a279716f6b8 100644 --- a/layout/reftests/w3c-css/failures.list +++ b/layout/reftests/w3c-css/failures.list @@ -168,11 +168,10 @@ fails css-writing-modes/vertical-alignment-vlr-025.xht fails css-writing-modes/vertical-alignment-vrl-022.xht fails css-writing-modes/vertical-alignment-vrl-024.xht -css-writing-modes/text-combine-upright-layout-rules-001.html +# Bug 1102175 +fails css-writing-modes/wm-propagation-body-*.xht -# Bug 1580385 - Fix failing writing-mode tests because of propagating WritingMode from -fails css-writing-modes/normal-flow-overconstrained-vlr-005.xht -fails css-writing-modes/normal-flow-overconstrained-vrl-004.xht +css-writing-modes/text-combine-upright-layout-rules-001.html #### CSS Multi-column 1 ############################################## diff --git a/layout/reftests/w3c-css/received/reftest.list b/layout/reftests/w3c-css/received/reftest.list index f9bbaa5416eb..8affcca7d7fb 100644 --- a/layout/reftests/w3c-css/received/reftest.list +++ b/layout/reftests/w3c-css/received/reftest.list @@ -876,9 +876,9 @@ fuzzy-if(OSX||winWidget,0-213,0-1540) random-if(/^Windows\x20NT\x206\.1/.test(ht random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == css-writing-modes/margin-vlr-003.xht css-writing-modes/margin-vrl-002-ref.xht random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == css-writing-modes/margin-vrl-002.xht css-writing-modes/margin-vrl-002-ref.xht == css-writing-modes/normal-flow-overconstrained-vlr-003.xht css-writing-modes/abs-pos-non-replaced-vlr-007-ref.xht -fails == css-writing-modes/normal-flow-overconstrained-vlr-005.xht css-writing-modes/abs-pos-non-replaced-vlr-013-ref.xht +== css-writing-modes/normal-flow-overconstrained-vlr-005.xht css-writing-modes/abs-pos-non-replaced-vlr-013-ref.xht == css-writing-modes/normal-flow-overconstrained-vrl-002.xht css-writing-modes/abs-pos-non-replaced-vrl-006-ref.xht -fails == css-writing-modes/normal-flow-overconstrained-vrl-004.xht css-writing-modes/abs-pos-non-replaced-vrl-012-ref.xht +== css-writing-modes/normal-flow-overconstrained-vrl-004.xht css-writing-modes/abs-pos-non-replaced-vrl-012-ref.xht == css-writing-modes/ortho-htb-alongside-vrl-floats-002.xht css-writing-modes/ortho-htb-alongside-vrl-floats-002-ref.xht == css-writing-modes/ortho-htb-alongside-vrl-floats-006.xht css-writing-modes/ortho-htb-alongside-vrl-floats-006-ref.xht == css-writing-modes/ortho-htb-alongside-vrl-floats-010.xht css-writing-modes/ortho-htb-alongside-vrl-floats-010-ref.xht @@ -1156,11 +1156,11 @@ fuzzy-if(winWidget,0-223,0-720) fuzzy-if(!webrender&&OSX,255-255,120-200) random fails == css-writing-modes/vertical-alignment-vrl-022.xht css-writing-modes/vertical-alignment-vrl-022-ref.xht fails == css-writing-modes/vertical-alignment-vrl-024.xht css-writing-modes/vertical-alignment-vrl-022-ref.xht fuzzy-if(winWidget,0-223,0-720) fuzzy-if(!webrender&&OSX,255-255,120-200) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == css-writing-modes/vertical-alignment-vrl-026.xht css-writing-modes/vertical-alignment-vrl-026-ref.xht -== css-writing-modes/wm-propagation-body-006.xht css-writing-modes/block-flow-direction-025-ref.xht -== css-writing-modes/wm-propagation-body-008.xht css-writing-modes/block-flow-direction-025-ref.xht -== css-writing-modes/wm-propagation-body-010.xht css-writing-modes/wm-propagation-body-003-ref.xht -== css-writing-modes/wm-propagation-body-011.xht css-writing-modes/wm-propagation-body-003-ref.xht -== css-writing-modes/wm-propagation-body-015.xht css-writing-modes/block-flow-direction-025-ref.xht +fails == css-writing-modes/wm-propagation-body-006.xht css-writing-modes/block-flow-direction-025-ref.xht +fails == css-writing-modes/wm-propagation-body-008.xht css-writing-modes/block-flow-direction-025-ref.xht +fails == css-writing-modes/wm-propagation-body-010.xht css-writing-modes/wm-propagation-body-003-ref.xht +fails == css-writing-modes/wm-propagation-body-011.xht css-writing-modes/wm-propagation-body-003-ref.xht +fails == css-writing-modes/wm-propagation-body-015.xht css-writing-modes/block-flow-direction-025-ref.xht == css-writing-modes/writing-mode-horizontal-001l.html css-writing-modes/reference/writing-mode-horizontal-001l-ref.html == css-writing-modes/writing-mode-horizontal-001r.html css-writing-modes/reference/writing-mode-horizontal-001r-ref.html fuzzy-if(winWidget,0-158,0-624) fuzzy-if(!webrender&&OSX,255-255,480-520) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == css-writing-modes/writing-mode-vertical-lr-002.xht css-writing-modes/reftest/writing-mode-vertical-lr-002-ref.xht diff --git a/layout/reftests/writing-mode/reftest.list b/layout/reftests/writing-mode/reftest.list index 159e5b1b7f1b..9942e9cd6ddc 100644 --- a/layout/reftests/writing-mode/reftest.list +++ b/layout/reftests/writing-mode/reftest.list @@ -24,7 +24,7 @@ random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1091058-1.html 1091058-1 == 1094914-1b.html 1094914-1-ref.html == 1096224-1a.html 1096224-1-ref.html == 1096224-1b.html 1096224-1-ref.html -random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1102175-1a.html 1102175-1-ref.html # Bug 1392106 +fails random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1102175-1a.html 1102175-1-ref.html # Bug 1392106 random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == 1102175-1b.html 1102175-1-ref.html # Bug 1392106 == 1103613-1.html 1103613-1-ref.html == 1105268-1-min-max-dimensions.html 1105268-1-min-max-dimensions-ref.html diff --git a/testing/web-platform/meta/css/css-writing-modes/normal-flow-overconstrained-vlr-005.xht.ini b/testing/web-platform/meta/css/css-writing-modes/normal-flow-overconstrained-vlr-005.xht.ini deleted file mode 100644 index c5e43a235a63..000000000000 --- a/testing/web-platform/meta/css/css-writing-modes/normal-flow-overconstrained-vlr-005.xht.ini +++ /dev/null @@ -1,3 +0,0 @@ -[normal-flow-overconstrained-vlr-005.xht] - expected: FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1580385 diff --git a/testing/web-platform/meta/css/css-writing-modes/normal-flow-overconstrained-vrl-004.xht.ini b/testing/web-platform/meta/css/css-writing-modes/normal-flow-overconstrained-vrl-004.xht.ini deleted file mode 100644 index 9af344a1e3ce..000000000000 --- a/testing/web-platform/meta/css/css-writing-modes/normal-flow-overconstrained-vrl-004.xht.ini +++ /dev/null @@ -1,3 +0,0 @@ -[normal-flow-overconstrained-vrl-004.xht] - expected: FAIL - bug: https://bugzilla.mozilla.org/show_bug.cgi?id=1580385 diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-002.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-002.html.ini new file mode 100644 index 000000000000..c7cf6db10edc --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-002.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-002.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-032.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-032.html.ini new file mode 100644 index 000000000000..6dc74c462a55 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-032.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-032.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-033.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-033.html.ini new file mode 100644 index 000000000000..31228c55c285 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-033.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-033.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-034.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-034.html.ini new file mode 100644 index 000000000000..3f9d15af8ac5 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-034.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-034.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-035.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-035.html.ini new file mode 100644 index 000000000000..f1fd1746158b --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-035.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-035.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-036.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-036.html.ini new file mode 100644 index 000000000000..9a2863fcacaa --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-036.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-036.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-037.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-037.html.ini new file mode 100644 index 000000000000..29232718ef5d --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-037.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-037.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-038.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-038.html.ini new file mode 100644 index 000000000000..3bcf05fce540 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-038.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-038.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-039.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-039.html.ini new file mode 100644 index 000000000000..ac94de4dd1a9 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-039.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-039.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-040.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-040.html.ini new file mode 100644 index 000000000000..aa41115094ac --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-040.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-040.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-041.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-041.html.ini new file mode 100644 index 000000000000..112623ca3e8f --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-041.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-041.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-043.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-043.html.ini new file mode 100644 index 000000000000..9d3d7891c5a7 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-043.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-043.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-045.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-045.html.ini new file mode 100644 index 000000000000..d0ed4ae69e56 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-045.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-045.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-046.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-046.html.ini new file mode 100644 index 000000000000..5e129bfd575b --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-046.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-046.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-048.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-048.html.ini new file mode 100644 index 000000000000..02c43f51de14 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-048.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-048.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-050.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-050.html.ini new file mode 100644 index 000000000000..f8b2d8f441e8 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-050.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-050.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-051.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-051.html.ini new file mode 100644 index 000000000000..344e4903ac4f --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-051.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-051.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-052.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-052.html.ini new file mode 100644 index 000000000000..edb6fb7f4d8a --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-052.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-052.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-053.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-053.html.ini new file mode 100644 index 000000000000..6c5be36f7363 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-053.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-053.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-055.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-055.html.ini new file mode 100644 index 000000000000..e1baf0fac534 --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-055.html.ini @@ -0,0 +1,2 @@ +[wm-propagation-body-055.html] + expected: FAIL diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-scroll-offset-vertical-lr.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-scroll-offset-vertical-lr.html.ini new file mode 100644 index 000000000000..99e413a6ad2f --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-scroll-offset-vertical-lr.html.ini @@ -0,0 +1,7 @@ +[wm-propagation-body-scroll-offset-vertical-lr.html] + [Scroll to scrollLeft = -1000 should not be possible.] + expected: FAIL + + [Scroll to scrollLeft = 1000 should be possible.] + expected: FAIL + diff --git a/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-scroll-offset-vertical-rl.html.ini b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-scroll-offset-vertical-rl.html.ini new file mode 100644 index 000000000000..99702f72e10e --- /dev/null +++ b/testing/web-platform/meta/css/css-writing-modes/wm-propagation-body-scroll-offset-vertical-rl.html.ini @@ -0,0 +1,7 @@ +[wm-propagation-body-scroll-offset-vertical-rl.html] + [Scroll to scrollLeft = -1000 should be possible.] + expected: FAIL + + [Scroll to scrollLeft = 1000 should not be possible.] + expected: FAIL + diff --git a/testing/web-platform/tests/css/css-writing-modes/slr-alongside-vlr-floats-ref.html b/testing/web-platform/tests/css/css-writing-modes/slr-alongside-vlr-floats-ref.html deleted file mode 100644 index 71a4c4c284b6..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/slr-alongside-vlr-floats-ref.html +++ /dev/null @@ -1,50 +0,0 @@ - - - CSS Writing Modes Test Reference: positioning of a sideways-lr block alongside vertical-lr floats - - - - - - - - -

Image download support must be enabled

- - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/slr-alongside-vlr-floats.html b/testing/web-platform/tests/css/css-writing-modes/slr-alongside-vlr-floats.html deleted file mode 100644 index 76fb454f6a17..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/slr-alongside-vlr-floats.html +++ /dev/null @@ -1,56 +0,0 @@ - - - CSS Writing Modes Test: positioning of a sideways-lr block alongside vertical-lr floats - - - - - - - - - - - - - - -

Image download support must be enabled

- - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/srl-alongside-vrl-floats-ref.html b/testing/web-platform/tests/css/css-writing-modes/srl-alongside-vrl-floats-ref.html deleted file mode 100644 index cd6ee5e91866..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/srl-alongside-vrl-floats-ref.html +++ /dev/null @@ -1,50 +0,0 @@ - - - CSS Writing Modes Test Reference: positioning of a sideways-rl block alongside vertical-rl floats - - - - - - - - -

Image download support must be enabled

- - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/srl-alongside-vrl-floats.html b/testing/web-platform/tests/css/css-writing-modes/srl-alongside-vrl-floats.html deleted file mode 100644 index 7b3ee59207b5..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/srl-alongside-vrl-floats.html +++ /dev/null @@ -1,56 +0,0 @@ - - - CSS Writing Modes Test: positioning of a sideways-rl block alongside vertical-rl floats - - - - - - - - - - - - - - -

Image download support must be enabled

- - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/vlr-text-orientation-sideways-alongside-vlr-floats-ref.html b/testing/web-platform/tests/css/css-writing-modes/vlr-text-orientation-sideways-alongside-vlr-floats-ref.html deleted file mode 100644 index fc4bbee90ad9..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/vlr-text-orientation-sideways-alongside-vlr-floats-ref.html +++ /dev/null @@ -1,42 +0,0 @@ - - - CSS Writing Modes Test Reference: positioning of a text-orientation:sideways block alongside vertical-lr floats - - - - - - - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/vlr-text-orientation-sideways-alongside-vlr-floats.html b/testing/web-platform/tests/css/css-writing-modes/vlr-text-orientation-sideways-alongside-vlr-floats.html deleted file mode 100644 index f605f20aa7e9..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/vlr-text-orientation-sideways-alongside-vlr-floats.html +++ /dev/null @@ -1,49 +0,0 @@ - - - CSS Writing Modes Test: positioning of a text-orientation:sideways block alongside vertical-lr floats - - - - - - - - - - - - - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/vrl-text-orientation-sideways-alongside-vrl-floats-ref.html b/testing/web-platform/tests/css/css-writing-modes/vrl-text-orientation-sideways-alongside-vrl-floats-ref.html deleted file mode 100644 index 218d5abdbe73..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/vrl-text-orientation-sideways-alongside-vrl-floats-ref.html +++ /dev/null @@ -1,42 +0,0 @@ - - - CSS Writing Modes Test Reference: positioning of a text-orientation:sideways block alongside vertical-rl floats - - - - - - - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/vrl-text-orientation-sideways-alongside-vrl-floats.html b/testing/web-platform/tests/css/css-writing-modes/vrl-text-orientation-sideways-alongside-vrl-floats.html deleted file mode 100644 index 710221031a3e..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/vrl-text-orientation-sideways-alongside-vrl-floats.html +++ /dev/null @@ -1,49 +0,0 @@ - - - CSS Writing Modes Test: positioning of a text-orientation:sideways block alongside vertical-rl floats - - - - - - - - - - - - - -
 
-
 
-
 
- - diff --git a/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-001.html b/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-001.html deleted file mode 100644 index 02af09311f79..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-001.html +++ /dev/null @@ -1,36 +0,0 @@ - - - - CSS-Writing Modes Test: propagation of the writing-mode property from body to root - - - - - - - - - - - -
- -

Image download support must be enabled

- - - diff --git a/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-002-ref.html b/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-002-ref.html deleted file mode 100644 index d7ddfd553d60..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-002-ref.html +++ /dev/null @@ -1,29 +0,0 @@ - - - - CSS-Writing Modes Test: propagation of the writing-mode property from body to root - - - - - -
-
-

Test passes if you see a blue square in the upper-right corner of the page

-
- diff --git a/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-002.html b/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-002.html deleted file mode 100644 index 1f485f68d864..000000000000 --- a/testing/web-platform/tests/css/css-writing-modes/wm-propagation-body-dynamic-change-002.html +++ /dev/null @@ -1,47 +0,0 @@ - - - - CSS-Writing Modes Test: propagation of the writing-mode property from body to root - - - - - - - - - - - -
-

Test passes if you see a blue square in the upper-right corner of the page

- -