Backed out changeset 26b1240bfca3 (bug 1901037) for causing multiple rendering related wpt failures

This commit is contained in:
Alexandru Marc
2025-03-15 01:33:00 +02:00
parent 0c1dd7f719
commit c9c8c944b9
17 changed files with 15 additions and 39 deletions

View File

@@ -805,8 +805,6 @@ class PageStyleActor extends Actor {
return node.nodeName == "VIDEO";
case "::file-selector-button":
return node.nodeName == "INPUT" && node.type == "file";
case "::details-content":
return node.nodeName == "DETAILS";
case "::placeholder":
case "::-moz-placeholder":
return this._nodeIsTextfieldLike(node);

View File

@@ -149,9 +149,6 @@ void HTMLDetailsElement::SetupShadowTree() {
if (NS_WARN_IF(!slot)) {
return;
}
if (StaticPrefs::layout_css_details_content_enabled()) {
slot->SetPseudoElementType(PseudoStyleType::detailsContent);
}
sr->AppendChildTo(slot, kNotify, IgnoreErrors());
}
}

View File

@@ -36,7 +36,6 @@
"::-moz-range-progress",
"::-moz-range-thumb",
"::-moz-range-track",
"::details-content",
]);
let names = InspectorUtils.getCSSPseudoElementNames();

View File

@@ -120,8 +120,3 @@ CSS_PSEUDO_ELEMENT(sliderThumb, ":slider-thumb",
CSS_PSEUDO_ELEMENT(sliderFill, ":slider-fill",
CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
CSS_PSEUDO_ELEMENT_ENABLED_IN_UA_SHEETS_AND_CHROME)
// The content in a <details> element that is shown when the element is open.
CSS_PSEUDO_ELEMENT(detailsContent, ":details-content",
CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
CSS_PSEUDO_ELEMENT_ENABLED_IN_UA_SHEETS_AND_CHROME)

View File

@@ -124,8 +124,6 @@ class nsCSSPseudoElements {
case Type::sliderThumb:
case Type::sliderFill:
return mozilla::StaticPrefs::layout_css_modern_range_pseudos_enabled();
case Type::detailsContent:
return mozilla::StaticPrefs::layout_css_details_content_enabled();
case Type::viewTransition:
case Type::viewTransitionGroup:
case Type::viewTransitionImagePair:

View File

@@ -2,7 +2,6 @@
* License, v. 2.0. If a copy of the MPL was not distributed with this
* file, You can obtain one at http://mozilla.org/MPL/2.0/. */
/* The slot:not([name]) don't match once ::details-content is enabled, and should be removed */
slot:not([name]) {
display: block;
content-visibility: hidden;

View File

@@ -703,6 +703,9 @@ iframe:fullscreen {
*
* Note that these rules need to be duplicated in details.css for the anonymous
* summary, which wouldn't match otherwise.
*
* The spec here says something different, see
* https://github.com/whatwg/html/issues/8610
*/
details > summary:first-of-type {
display: list-item;
@@ -713,14 +716,6 @@ details[open] > summary:first-of-type {
list-style-type: disclosure-open;
}
details::details-content {
display: block;
content-visibility: hidden;
}
details[open]::details-content {
content-visibility: revert;
}
/* media elements */
video {
object-fit: contain;

View File

@@ -10444,13 +10444,6 @@
value: false
mirror: always
# Is support for the ::details-content pseudo-element enabled?
- name: layout.css.details-content.enabled
type: RelaxedAtomicBool
value: false
mirror: always
rust: true
# Is 'content:none' supported on (non-pseudo) elements?
- name: layout.css.element-content-none.enabled
type: RelaxedAtomicBool

View File

@@ -39,8 +39,7 @@ impl ::selectors::parser::PseudoElement for PseudoElement {
Self::After |
Self::Marker |
Self::Placeholder |
Self::FileSelectorButton |
Self::DetailsContent
Self::FileSelectorButton
)
}
@@ -194,7 +193,7 @@ impl PseudoElement {
/// Whether this pseudo-element is "part-like", which means that it inherits from its regular
/// flat tree parent, which might not be the originating element.
pub fn is_part_like(&self) -> bool {
self.is_named_view_transition() || *self == PseudoElement::DetailsContent
self.is_named_view_transition()
}
/// The count we contribute to the specificity from this pseudo-element.
@@ -227,9 +226,6 @@ impl PseudoElement {
Self::SliderFill | Self::SliderTrack | Self::SliderThumb => {
pref!("layout.css.modern-range-pseudos.enabled")
},
Self::DetailsContent => {
pref!("layout.css.details-content.enabled")
},
Self::ViewTransition |
Self::ViewTransitionGroup(..) |
Self::ViewTransitionImagePair(..) |

View File

@@ -554,7 +554,6 @@ impl<'a, 'b: 'a> StyleAdjuster<'a, 'b> {
// FIXME(emilio): ::before and ::after should support display: contents,
// see bug 1418138.
// FIXME(bug 1954140): Element-backed pseudo elements should support display: contents.
if self.style.pseudo.is_some() {
self.style.mutate_box().set_display(Display::Inline);
return;

View File

@@ -296,7 +296,6 @@ where
let mut pseudo_styles = EagerPseudoStyles::default();
// FIXME(bug 1954142): This should account for element-backed pseudo elements.
if !self.element.is_pseudo_element() {
let layout_parent_style_for_pseudo =
layout_parent_style_for_pseudo(&primary_style, layout_parent_style);

View File

@@ -1,2 +1,2 @@
prefs: [layout.details.force-block-layout:false,layout.css.details-content.enabled:true]
prefs: [layout.details.force-block-layout:false]
leak-threshold: [default:51200]

View File

@@ -0,0 +1,2 @@
[details-pseudo-elements-001.html]
expected: FAIL

View File

@@ -0,0 +1,2 @@
[details-pseudo-elements-002.html]
expected: FAIL

View File

@@ -0,0 +1,2 @@
[details-pseudo-elements-003.html]
expected: FAIL

View File

@@ -0,0 +1,3 @@
[details-pseudo-elements-006.html]
[::details-content matches :hover when mouse pointer is over it]
expected: FAIL

View File

@@ -2542,7 +2542,6 @@ STATIC_ATOMS = [
PseudoElementAtom("PseudoElement_sliderTrack", ":slider-track"),
PseudoElementAtom("PseudoElement_sliderThumb", ":slider-thumb"),
PseudoElementAtom("PseudoElement_sliderFill", ":slider-fill"),
PseudoElementAtom("PseudoElement_detailsContent", ":details-content"),
# CSS anonymous boxes -- these must appear in the same order as
# in nsCSSAnonBoxList.h
NonInheritingAnonBoxAtom("AnonBox_oofPlaceholder", ":-moz-oof-placeholder"),