Bug 1587577 - Remove support for the mfenced element. r=emilio
authorFrederic Wang <fred.wang@free.fr>
Thu, 17 Oct 2019 15:53:31 +0000
changeset 559363 52a520cb41e2fac41a1fa3d24f6639ce0349cd18
parent 559362 e22edfaae86f049b08c38f397071bb05f1bfa3f8
child 559364 7647afb22a01a055675b86538077d804dd0dcd72
push id12177
push usercsabou@mozilla.com
push dateMon, 21 Oct 2019 14:52:16 +0000
treeherdermozilla-beta@1918a9cd33bc [default view] [failures only]
perfherder[talos] [build metrics] [platform microbench] (compared to previous push)
reviewersemilio
bugs1587577
milestone71.0a1
first release with
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
last release without
nightly linux32
nightly linux64
nightly mac
nightly win32
nightly win64
Bug 1587577 - Remove support for the mfenced element. r=emilio See https://groups.google.com/forum/#!topic/mozilla.dev.platform/DHO72glZxA0 Differential Revision: https://phabricator.services.mozilla.com/D49320
dom/base/nsDeprecatedOperationList.h
dom/locales/en-US/chrome/dom/dom.properties
layout/base/nsCSSFrameConstructor.cpp
layout/reftests/mathml/reftest.list
modules/libpref/init/StaticPrefList.yaml
testing/web-platform/meta/mathml/__dir__.ini
testing/web-platform/meta/mathml/presentation-markup/mrow/legacy-mfenced-element-001.html.ini
--- a/dom/base/nsDeprecatedOperationList.h
+++ b/dom/base/nsDeprecatedOperationList.h
@@ -47,11 +47,12 @@ DEPRECATED_OPERATION(MozfullscreenerrorD
 DEPRECATED_OPERATION(External_AddSearchProvider)
 DEPRECATED_OPERATION(MouseEvent_MozPressure)
 DEPRECATED_OPERATION(MathML_DeprecatedAlignmentAttributes)
 DEPRECATED_OPERATION(MathML_DeprecatedBevelledAttribute)
 DEPRECATED_OPERATION(MathML_DeprecatedLineThicknessValue)
 DEPRECATED_OPERATION(MathML_DeprecatedMathSizeValue)
 DEPRECATED_OPERATION(MathML_DeprecatedMathSpaceValue)
 DEPRECATED_OPERATION(MathML_DeprecatedMencloseNotationRadical)
+DEPRECATED_OPERATION(MathML_DeprecatedMfencedElement)
 DEPRECATED_OPERATION(MathML_DeprecatedScriptShiftAttributes)
 DEPRECATED_OPERATION(MathML_DeprecatedStyleAttribute)
 DEPRECATED_OPERATION(MathML_DeprecatedXLinkAttribute)
--- a/dom/locales/en-US/chrome/dom/dom.properties
+++ b/dom/locales/en-US/chrome/dom/dom.properties
@@ -372,16 +372,18 @@ MathML_DeprecatedBevelledAttribute=MathML attribute “bevelled” is deprecated and may be removed at a future date.
 MathML_DeprecatedLineThicknessValueWarning=“thin”, “medium” and “thick” are deprecated values for the linethickness attribute and will be removed at a future date.
 # LOCALIZATION NOTE: Do not translate small, normal, big and mathsize.
 MathML_DeprecatedMathSizeValueWarning=“small”, “normal” and “big” are deprecated values for the mathsize attribute and will be removed at a future date.
 # LOCALIZATION NOTE: Do not translate veryverythinmathspace, verythinmathspace,
 # thinmathspace, mediummathspace, thickmathspace, verythickmathspace, veryverythickmathspace and MathML.
 MathML_DeprecatedMathSpaceValueWarning=“veryverythinmathspace”, “verythinmathspace”, “thinmathspace”, “mediummathspace”, “thickmathspace”, “verythickmathspace” and “veryverythickmathspace” are deprecated values for MathML lengths and will be removed at a future date.
 # LOCALIZATION NOTE: Do not translate radical, notation and menclose.
 MathML_DeprecatedMencloseNotationRadical=The “radical” value is deprecated for the “notation” attribute of the <menclose> element and will be removed at a future date.
+# LOCALIZATION NOTE: Do not translate MathML or mfenced.
+MathML_DeprecatedMfencedElement=MathML element mfenced is deprecated and will be removed at a future date.
 # LOCALIZATION NOTE: Do not translate MathML, subscriptshift and superscriptshift.
 MathML_DeprecatedScriptShiftAttributes=MathML attributes “subscriptshift” and “superscriptshift” are deprecated and may be removed at a future date.
 # LOCALIZATION NOTE: Do not translate MathML, background, color, fontfamily, fontsize, fontstyle and fontweight.
 MathML_DeprecatedStyleAttributeWarning=MathML attributes “background”, “color”, “fontfamily”, “fontsize”, “fontstyle” and “fontweight” are deprecated and will be removed at a future date.
 # LOCALIZATION NOTE: Do not translate MathML and XLink.
 MathML_DeprecatedXLinkAttributeWarning=XLink attributes “href”, “type”, “show” and “actuate” are deprecated on MathML elements and will be removed at a future date.
 # LOCALIZATION NOTE: Do not translate title, text, url as they are the names of JS properties.
 WebShareAPI_NeedOneMember=title or text or url member of the ShareData dictionary. At least one of the members is required.
--- a/layout/base/nsCSSFrameConstructor.cpp
+++ b/layout/base/nsCSSFrameConstructor.cpp
@@ -25,16 +25,17 @@
 #include "mozilla/Likely.h"
 #include "mozilla/LinkedList.h"
 #include "mozilla/MemoryReporting.h"
 #include "mozilla/PresShell.h"
 #include "mozilla/PresShellInlines.h"
 #include "mozilla/ServoBindings.h"
 #include "mozilla/ServoStyleSetInlines.h"
 #include "mozilla/StaticPrefs_layout.h"
+#include "mozilla/StaticPrefs_mathml.h"
 #include "mozilla/Unused.h"
 #include "RetainedDisplayListBuilder.h"
 #include "nsAbsoluteContainingBlock.h"
 #include "nsCSSPseudoElements.h"
 #include "nsAtom.h"
 #include "nsIFrameInlines.h"
 #include "nsGkAtoms.h"
 #include "nsPresContext.h"
@@ -4858,16 +4859,26 @@ nsCSSFrameConstructor::FindMathMLData(co
 
     static const FrameConstructionData sInlineMathData =
         FCDATA_DECL(FCDATA_FORCE_NULL_ABSPOS_CONTAINER |
                         FCDATA_IS_LINE_PARTICIPANT | FCDATA_WRAP_KIDS_IN_BLOCKS,
                     NS_NewMathMLmathInlineFrame);
     return &sInlineMathData;
   }
 
+  if (!StaticPrefs::mathml_mfenced_element_disabled() &&
+      tag == nsGkAtoms::mfenced_) {
+    // These flags are the same as those of SIMPLE_MATHML_CREATE.
+    static const FrameConstructionData sMathFencedData = FCDATA_DECL(
+        FCDATA_DISALLOW_OUT_OF_FLOW | FCDATA_FORCE_NULL_ABSPOS_CONTAINER |
+            FCDATA_WRAP_KIDS_IN_BLOCKS,
+        NS_NewMathMLmfencedFrame);
+    return &sMathFencedData;
+  }
+
   static const FrameConstructionDataByTag sMathMLData[] = {
       SIMPLE_MATHML_CREATE(annotation_, NS_NewMathMLTokenFrame),
       SIMPLE_MATHML_CREATE(annotation_xml_, NS_NewMathMLmrowFrame),
       SIMPLE_MATHML_CREATE(mi_, NS_NewMathMLTokenFrame),
       SIMPLE_MATHML_CREATE(mn_, NS_NewMathMLTokenFrame),
       SIMPLE_MATHML_CREATE(ms_, NS_NewMathMLTokenFrame),
       SIMPLE_MATHML_CREATE(mtext_, NS_NewMathMLTokenFrame),
       SIMPLE_MATHML_CREATE(mo_, NS_NewMathMLmoFrame),
@@ -4878,17 +4889,17 @@ nsCSSFrameConstructor::FindMathMLData(co
       SIMPLE_MATHML_CREATE(munder_, NS_NewMathMLmunderoverFrame),
       SIMPLE_MATHML_CREATE(mover_, NS_NewMathMLmunderoverFrame),
       SIMPLE_MATHML_CREATE(munderover_, NS_NewMathMLmunderoverFrame),
       SIMPLE_MATHML_CREATE(mphantom_, NS_NewMathMLmrowFrame),
       SIMPLE_MATHML_CREATE(mpadded_, NS_NewMathMLmpaddedFrame),
       SIMPLE_MATHML_CREATE(mspace_, NS_NewMathMLmspaceFrame),
       SIMPLE_MATHML_CREATE(none, NS_NewMathMLmspaceFrame),
       SIMPLE_MATHML_CREATE(mprescripts_, NS_NewMathMLmspaceFrame),
-      SIMPLE_MATHML_CREATE(mfenced_, NS_NewMathMLmfencedFrame),
+      SIMPLE_MATHML_CREATE(mfenced_, NS_NewMathMLmrowFrame),
       SIMPLE_MATHML_CREATE(mmultiscripts_, NS_NewMathMLmmultiscriptsFrame),
       SIMPLE_MATHML_CREATE(mstyle_, NS_NewMathMLmrowFrame),
       SIMPLE_MATHML_CREATE(msqrt_, NS_NewMathMLmsqrtFrame),
       SIMPLE_MATHML_CREATE(mroot_, NS_NewMathMLmrootFrame),
       SIMPLE_MATHML_CREATE(maction_, NS_NewMathMLmactionFrame),
       SIMPLE_MATHML_CREATE(mrow_, NS_NewMathMLmrowFrame),
       SIMPLE_MATHML_CREATE(merror_, NS_NewMathMLmrowFrame),
       SIMPLE_MATHML_CREATE(menclose_, NS_NewMathMLmencloseFrame),
--- a/layout/reftests/mathml/reftest.list
+++ b/layout/reftests/mathml/reftest.list
@@ -25,36 +25,36 @@ pref(mathml.disabled,true) == disabled-s
 pref(mathml.disabled,true) == disabled-scriptlevel-1.xhtml disabled-scriptlevel-1-ref.xhtml
 random-if(smallScreen&&Android) fuzzy(0-255,0-200) fuzzy-if(geckoview&&webrender,201-216,312-316) fuzzy-if(webrender&&winWidget,114-255,245-361) fuzzy-if(webrender&&OSX,79-153,307-314) == mirror-op-1.html mirror-op-1-ref.html
 != mirror-op-2.html mirror-op-2-ref.html
 != mirror-op-3.html mirror-op-3-ref.html
 != mirror-op-4.html mirror-op-4-ref.html
 == dynamic-mi.xhtml dynamic-mi-ref.xhtml
 == mphantom-1.html mphantom-1-ref.html
 == mphantom-2.html mphantom-2-ref.html
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-1.xhtml mfenced-1-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-2a.xhtml mfenced-2-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-2b.xhtml mfenced-2-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3a.xhtml mfenced-3-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3b.xhtml mfenced-3-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3c.xhtml mfenced-3-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3d.xhtml mfenced-3-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-4a.xhtml mfenced-4-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-4b.xhtml mfenced-4-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5a.xhtml mfenced-5-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5b.xhtml mfenced-5-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5c.xhtml mfenced-5-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5d.xhtml mfenced-5-ref.xhtml # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-6.html mfenced-6-ref.html # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-7.html mfenced-7-ref.html # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) != mfenced-8.html mfenced-8-ref.html # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-9.html mfenced-9-ref.html # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-10.html mfenced-10-ref.html # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-11.html mfenced-11-ref.html # bug 670592, bug 1328771, Bug 1392106
-fails-if(gtkWidget) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-12.html mfenced-12-ref.html # bug 670592, bug 1328771, Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-1.xhtml mfenced-1-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-2a.xhtml mfenced-2-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-2b.xhtml mfenced-2-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3a.xhtml mfenced-3-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3b.xhtml mfenced-3-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3c.xhtml mfenced-3-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-3d.xhtml mfenced-3-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-4a.xhtml mfenced-4-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-4b.xhtml mfenced-4-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5a.xhtml mfenced-5-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5b.xhtml mfenced-5-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5c.xhtml mfenced-5-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-5d.xhtml mfenced-5-ref.xhtml # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-6.html mfenced-6-ref.html # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-7.html mfenced-7-ref.html # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) != mfenced-8.html mfenced-8-ref.html # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-9.html mfenced-9-ref.html # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-10.html mfenced-10-ref.html # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-11.html mfenced-11-ref.html # bug 670592, bug 1328771, Bug 1392106
+pref(mathml.mfenced_element.disabled,false) fails-if(gtkWidget) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mfenced-12.html mfenced-12-ref.html # bug 670592, bug 1328771, Bug 1392106
 == mi-mathvariant-1.xhtml mi-mathvariant-1-ref.xhtml
 == mi-mathvariant-2.xhtml mi-mathvariant-2-ref.xhtml
 != mi-mathvariant-3.html mi-mathvariant-3-ref.html
 != non-spacing-accent-1.xhtml non-spacing-accent-1-ref.xhtml
 == overbar-width-1.xhtml overbar-width-1-ref.xhtml
 == quotes-1.xhtml quotes-1-ref.xhtml
 != stretchy-underbar-1.xhtml stretchy-underbar-1-ref.xhtml
 != stretchy-munderover-1a.html stretchy-munderover-1-ref.html
@@ -72,24 +72,24 @@ fails-if(gtkWidget) random-if(/^Windows\
 != stretchy-munderover-3a.html stretchy-munderover-3-ref.html
 == stretchy-munderover-3b.html stretchy-munderover-3-ref.html
 == stretchy-munderover-3c.html stretchy-munderover-3-ref.html
 != stretchy-munderover-3d.html stretchy-munderover-3-ref.html
 == stretchy-msup-1a.html stretchy-msup-1-ref.html
 == stretchy-msup-1b.html stretchy-msup-1-ref.html
 == stretchy-msup-1c.html stretchy-msup-1-ref.html
 == stretchy-msup-1d.html stretchy-msup-1-ref.html
-!= stretchy-mfenced-1a.html stretchy-mfenced-1-ref.html
-!= stretchy-mfenced-1b.html stretchy-mfenced-1-ref.html
-== stretchy-mfenced-2a.html stretchy-mfenced-2-ref.html
-!= stretchy-mfenced-2b.html stretchy-mfenced-2-ref.html
-!= stretchy-mfenced-3a.html stretchy-mfenced-3-ref.html
-!= stretchy-mfenced-3b.html stretchy-mfenced-3-ref.html
-fails-if(geckoview) == stretchy-mfenced-4a.html stretchy-mfenced-4-ref.html # Bug 1558513 for GV
-fails-if(geckoview) == stretchy-mfenced-4b.html stretchy-mfenced-4-ref.html # Bug 1558513 for GV
+pref(mathml.mfenced_element.disabled,false) != stretchy-mfenced-1a.html stretchy-mfenced-1-ref.html
+pref(mathml.mfenced_element.disabled,false) != stretchy-mfenced-1b.html stretchy-mfenced-1-ref.html
+pref(mathml.mfenced_element.disabled,false) == stretchy-mfenced-2a.html stretchy-mfenced-2-ref.html
+pref(mathml.mfenced_element.disabled,false) != stretchy-mfenced-2b.html stretchy-mfenced-2-ref.html
+pref(mathml.mfenced_element.disabled,false) != stretchy-mfenced-3a.html stretchy-mfenced-3-ref.html
+pref(mathml.mfenced_element.disabled,false) != stretchy-mfenced-3b.html stretchy-mfenced-3-ref.html
+pref(mathml.mfenced_element.disabled,false) fails-if(geckoview) == stretchy-mfenced-4a.html stretchy-mfenced-4-ref.html # Bug 1558513 for GV
+pref(mathml.mfenced_element.disabled,false) fails-if(geckoview) == stretchy-mfenced-4b.html stretchy-mfenced-4-ref.html # Bug 1558513 for GV
 == stretchy-mover-1a.html stretchy-mover-1-ref.html
 == stretchy-mover-1b.html stretchy-mover-1-ref.html
 fails == stretchy-mover-2a.html stretchy-mover-2-ref.html
 != stretchy-mover-2b.html stretchy-mover-2-ref.html
 == stretchy-mover-3.html stretchy-mover-3-ref.html
 == stretchy-largeop-1.html stretchy-largeop-1-ref.html
 == stretchy-largeop-2.html stretchy-largeop-2-ref.html
 == stretchy-largeop-3.html stretchy-largeop-3-ref.html
@@ -180,17 +180,17 @@ pref(mathml.mathspace_names.disabled,fal
 == mtable-columnalign-multi-mtr-dynamic.html mtable-columnalign-multi-ref.html
 == mtable-columnalign-multi-mtable.html mtable-columnalign-multi-ref.html
 == mtable-columnalign-multi-mtable-dynamic.html mtable-columnalign-multi-ref.html
 == maction-selection.html maction-selection-ref.html
 == maction-dynamic-embellished-op.html maction-dynamic-embellished-op-ref.html
 == maction-dynamic-1.html maction-dynamic-1-ref.html # bug 773482
 == maction-dynamic-2.html maction-dynamic-2-ref.html
 random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mo-lspace-rspace.html mo-lspace-rspace-ref.html # Bug 1392106
-random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mo-lspace-rspace-2.html mo-lspace-rspace-2-ref.html # Bug 1392106
+pref(mathml.mfenced_element.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mo-lspace-rspace-2.html mo-lspace-rspace-2-ref.html # Bug 1392106
 random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mo-lspace-rspace-3.html mo-lspace-rspace-3-ref.html # Bug 1392106
 pref(mathml.mfrac_bevelled_attribute.disabled,false) random-if(/^Windows\x20NT\x206\.1/.test(http.oscpu)) == mo-lspace-rspace-4.html mo-lspace-rspace-4-ref.html # Bug 1392106
 == mo-invisibleoperators.html mo-invisibleoperators-ref.html
 == mo-invisibleoperators-2.html mo-invisibleoperators-2-ref.html
 random-if(gtkWidget) == mo-glyph-size.html mo-glyph-size-ref.html # bug 1309426
 == maction-dynamic-3.html maction-dynamic-3-ref.html # bug 773482
 == whitespace-trim-1.html whitespace-trim-1-ref.html
 == whitespace-trim-2.html whitespace-trim-2-ref.html
--- a/modules/libpref/init/StaticPrefList.yaml
+++ b/modules/libpref/init/StaticPrefList.yaml
@@ -5352,16 +5352,22 @@
   mirror: always
 
 # Whether to disable the mfrac bevelled  attribute.
 - name: mathml.mfrac_bevelled_attribute.disabled
   type: bool
   value: @IS_NIGHTLY_BUILD@
   mirror: always
 
+# Whether to disable the mfenced element.
+- name: mathml.mfenced_element.disabled
+  type: bool
+  value: @IS_NIGHTLY_BUILD@
+  mirror: always
+
 # Whether to disable legacy names "thin", "thick" and "medium" for the
 # linethickness attribute of the mfrac element.
 - name: mathml.mfrac_linethickness_names.disabled
   type: bool
   value: @IS_NIGHTLY_BUILD@
   mirror: always
 
 # Whether to disable nonzero unitless values e.g. linethickness="2" for 200%
--- a/testing/web-platform/meta/mathml/__dir__.ini
+++ b/testing/web-platform/meta/mathml/__dir__.ini
@@ -1,1 +1,1 @@
-prefs: [mathml.deprecated_style_attributes.disabled: true, mathml.deprecated_menclose_notation_radical.disabled: true, mathml.legacy_number_syntax.disabled: true, mathml.mathsize_names.disabled:true, mathml.mathspace_names.disabled: true, mathml.mfrac_linethickness_names.disabled:true, mathml.nonzero_unitless_lengths.disabled:true, mathml.deprecated_alignment_attributes.disabled: true, mathml.script_shift_attributes.disabled: true, mathml.mfrac_bevelled_attribute.disabled: true]
\ No newline at end of file
+prefs: [mathml.deprecated_style_attributes.disabled: true, mathml.deprecated_menclose_notation_radical.disabled: true, mathml.legacy_number_syntax.disabled: true, mathml.mathsize_names.disabled:true, mathml.mathspace_names.disabled: true, mathml.mfrac_linethickness_names.disabled:true, mathml.nonzero_unitless_lengths.disabled:true, mathml.deprecated_alignment_attributes.disabled: true, mathml.script_shift_attributes.disabled: true, mathml.mfrac_bevelled_attribute.disabled: true, mathml.mfenced_element.disabled: true]
\ No newline at end of file
deleted file mode 100644
--- a/testing/web-platform/meta/mathml/presentation-markup/mrow/legacy-mfenced-element-001.html.ini
+++ /dev/null
@@ -1,2 +0,0 @@
-[legacy-mfenced-element-001.html]
-  expected: FAIL