Backed out changeset 26b1240bfca3 (bug 1901037) for causing multiple rendering related wpt failures
This commit is contained in:
@@ -805,8 +805,6 @@ class PageStyleActor extends Actor {
|
|||||||
return node.nodeName == "VIDEO";
|
return node.nodeName == "VIDEO";
|
||||||
case "::file-selector-button":
|
case "::file-selector-button":
|
||||||
return node.nodeName == "INPUT" && node.type == "file";
|
return node.nodeName == "INPUT" && node.type == "file";
|
||||||
case "::details-content":
|
|
||||||
return node.nodeName == "DETAILS";
|
|
||||||
case "::placeholder":
|
case "::placeholder":
|
||||||
case "::-moz-placeholder":
|
case "::-moz-placeholder":
|
||||||
return this._nodeIsTextfieldLike(node);
|
return this._nodeIsTextfieldLike(node);
|
||||||
|
|||||||
@@ -149,9 +149,6 @@ void HTMLDetailsElement::SetupShadowTree() {
|
|||||||
if (NS_WARN_IF(!slot)) {
|
if (NS_WARN_IF(!slot)) {
|
||||||
return;
|
return;
|
||||||
}
|
}
|
||||||
if (StaticPrefs::layout_css_details_content_enabled()) {
|
|
||||||
slot->SetPseudoElementType(PseudoStyleType::detailsContent);
|
|
||||||
}
|
|
||||||
sr->AppendChildTo(slot, kNotify, IgnoreErrors());
|
sr->AppendChildTo(slot, kNotify, IgnoreErrors());
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
|
|||||||
@@ -36,7 +36,6 @@
|
|||||||
"::-moz-range-progress",
|
"::-moz-range-progress",
|
||||||
"::-moz-range-thumb",
|
"::-moz-range-thumb",
|
||||||
"::-moz-range-track",
|
"::-moz-range-track",
|
||||||
"::details-content",
|
|
||||||
]);
|
]);
|
||||||
|
|
||||||
let names = InspectorUtils.getCSSPseudoElementNames();
|
let names = InspectorUtils.getCSSPseudoElementNames();
|
||||||
|
|||||||
@@ -120,8 +120,3 @@ CSS_PSEUDO_ELEMENT(sliderThumb, ":slider-thumb",
|
|||||||
CSS_PSEUDO_ELEMENT(sliderFill, ":slider-fill",
|
CSS_PSEUDO_ELEMENT(sliderFill, ":slider-fill",
|
||||||
CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
|
CSS_PSEUDO_ELEMENT_SUPPORTS_USER_ACTION_STATE |
|
||||||
CSS_PSEUDO_ELEMENT_ENABLED_IN_UA_SHEETS_AND_CHROME)
|
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)
|
|
||||||
|
|||||||
@@ -124,8 +124,6 @@ class nsCSSPseudoElements {
|
|||||||
case Type::sliderThumb:
|
case Type::sliderThumb:
|
||||||
case Type::sliderFill:
|
case Type::sliderFill:
|
||||||
return mozilla::StaticPrefs::layout_css_modern_range_pseudos_enabled();
|
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::viewTransition:
|
||||||
case Type::viewTransitionGroup:
|
case Type::viewTransitionGroup:
|
||||||
case Type::viewTransitionImagePair:
|
case Type::viewTransitionImagePair:
|
||||||
|
|||||||
@@ -2,7 +2,6 @@
|
|||||||
* License, v. 2.0. If a copy of the MPL was not distributed with this
|
* 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/. */
|
* 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]) {
|
slot:not([name]) {
|
||||||
display: block;
|
display: block;
|
||||||
content-visibility: hidden;
|
content-visibility: hidden;
|
||||||
|
|||||||
@@ -703,6 +703,9 @@ iframe:fullscreen {
|
|||||||
*
|
*
|
||||||
* Note that these rules need to be duplicated in details.css for the anonymous
|
* Note that these rules need to be duplicated in details.css for the anonymous
|
||||||
* summary, which wouldn't match otherwise.
|
* 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 {
|
details > summary:first-of-type {
|
||||||
display: list-item;
|
display: list-item;
|
||||||
@@ -713,14 +716,6 @@ details[open] > summary:first-of-type {
|
|||||||
list-style-type: disclosure-open;
|
list-style-type: disclosure-open;
|
||||||
}
|
}
|
||||||
|
|
||||||
details::details-content {
|
|
||||||
display: block;
|
|
||||||
content-visibility: hidden;
|
|
||||||
}
|
|
||||||
details[open]::details-content {
|
|
||||||
content-visibility: revert;
|
|
||||||
}
|
|
||||||
|
|
||||||
/* media elements */
|
/* media elements */
|
||||||
video {
|
video {
|
||||||
object-fit: contain;
|
object-fit: contain;
|
||||||
|
|||||||
@@ -10444,13 +10444,6 @@
|
|||||||
value: false
|
value: false
|
||||||
mirror: always
|
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?
|
# Is 'content:none' supported on (non-pseudo) elements?
|
||||||
- name: layout.css.element-content-none.enabled
|
- name: layout.css.element-content-none.enabled
|
||||||
type: RelaxedAtomicBool
|
type: RelaxedAtomicBool
|
||||||
|
|||||||
@@ -39,8 +39,7 @@ impl ::selectors::parser::PseudoElement for PseudoElement {
|
|||||||
Self::After |
|
Self::After |
|
||||||
Self::Marker |
|
Self::Marker |
|
||||||
Self::Placeholder |
|
Self::Placeholder |
|
||||||
Self::FileSelectorButton |
|
Self::FileSelectorButton
|
||||||
Self::DetailsContent
|
|
||||||
)
|
)
|
||||||
}
|
}
|
||||||
|
|
||||||
@@ -194,7 +193,7 @@ impl PseudoElement {
|
|||||||
/// Whether this pseudo-element is "part-like", which means that it inherits from its regular
|
/// 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.
|
/// flat tree parent, which might not be the originating element.
|
||||||
pub fn is_part_like(&self) -> bool {
|
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.
|
/// The count we contribute to the specificity from this pseudo-element.
|
||||||
@@ -227,9 +226,6 @@ impl PseudoElement {
|
|||||||
Self::SliderFill | Self::SliderTrack | Self::SliderThumb => {
|
Self::SliderFill | Self::SliderTrack | Self::SliderThumb => {
|
||||||
pref!("layout.css.modern-range-pseudos.enabled")
|
pref!("layout.css.modern-range-pseudos.enabled")
|
||||||
},
|
},
|
||||||
Self::DetailsContent => {
|
|
||||||
pref!("layout.css.details-content.enabled")
|
|
||||||
},
|
|
||||||
Self::ViewTransition |
|
Self::ViewTransition |
|
||||||
Self::ViewTransitionGroup(..) |
|
Self::ViewTransitionGroup(..) |
|
||||||
Self::ViewTransitionImagePair(..) |
|
Self::ViewTransitionImagePair(..) |
|
||||||
|
|||||||
@@ -554,7 +554,6 @@ impl<'a, 'b: 'a> StyleAdjuster<'a, 'b> {
|
|||||||
|
|
||||||
// FIXME(emilio): ::before and ::after should support display: contents,
|
// FIXME(emilio): ::before and ::after should support display: contents,
|
||||||
// see bug 1418138.
|
// see bug 1418138.
|
||||||
// FIXME(bug 1954140): Element-backed pseudo elements should support display: contents.
|
|
||||||
if self.style.pseudo.is_some() {
|
if self.style.pseudo.is_some() {
|
||||||
self.style.mutate_box().set_display(Display::Inline);
|
self.style.mutate_box().set_display(Display::Inline);
|
||||||
return;
|
return;
|
||||||
|
|||||||
@@ -296,7 +296,6 @@ where
|
|||||||
|
|
||||||
let mut pseudo_styles = EagerPseudoStyles::default();
|
let mut pseudo_styles = EagerPseudoStyles::default();
|
||||||
|
|
||||||
// FIXME(bug 1954142): This should account for element-backed pseudo elements.
|
|
||||||
if !self.element.is_pseudo_element() {
|
if !self.element.is_pseudo_element() {
|
||||||
let layout_parent_style_for_pseudo =
|
let layout_parent_style_for_pseudo =
|
||||||
layout_parent_style_for_pseudo(&primary_style, layout_parent_style);
|
layout_parent_style_for_pseudo(&primary_style, layout_parent_style);
|
||||||
|
|||||||
@@ -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]
|
leak-threshold: [default:51200]
|
||||||
|
|||||||
@@ -0,0 +1,2 @@
|
|||||||
|
[details-pseudo-elements-001.html]
|
||||||
|
expected: FAIL
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
[details-pseudo-elements-002.html]
|
||||||
|
expected: FAIL
|
||||||
@@ -0,0 +1,2 @@
|
|||||||
|
[details-pseudo-elements-003.html]
|
||||||
|
expected: FAIL
|
||||||
@@ -0,0 +1,3 @@
|
|||||||
|
[details-pseudo-elements-006.html]
|
||||||
|
[::details-content matches :hover when mouse pointer is over it]
|
||||||
|
expected: FAIL
|
||||||
@@ -2542,7 +2542,6 @@ STATIC_ATOMS = [
|
|||||||
PseudoElementAtom("PseudoElement_sliderTrack", ":slider-track"),
|
PseudoElementAtom("PseudoElement_sliderTrack", ":slider-track"),
|
||||||
PseudoElementAtom("PseudoElement_sliderThumb", ":slider-thumb"),
|
PseudoElementAtom("PseudoElement_sliderThumb", ":slider-thumb"),
|
||||||
PseudoElementAtom("PseudoElement_sliderFill", ":slider-fill"),
|
PseudoElementAtom("PseudoElement_sliderFill", ":slider-fill"),
|
||||||
PseudoElementAtom("PseudoElement_detailsContent", ":details-content"),
|
|
||||||
# CSS anonymous boxes -- these must appear in the same order as
|
# CSS anonymous boxes -- these must appear in the same order as
|
||||||
# in nsCSSAnonBoxList.h
|
# in nsCSSAnonBoxList.h
|
||||||
NonInheritingAnonBoxAtom("AnonBox_oofPlaceholder", ":-moz-oof-placeholder"),
|
NonInheritingAnonBoxAtom("AnonBox_oofPlaceholder", ":-moz-oof-placeholder"),
|
||||||
|
|||||||
Reference in New Issue
Block a user