mirror of
https://github.com/servo/servo.git
synced 2025-06-08 00:23:30 +00:00
Don't tell stylo about stylesheets that are not in a browsing context (#35606)
* Don't register stylesheets outside of a browsing context with stylo Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> * Update WPT expectations Signed-off-by: Simon Wülker <simon.wuelker@arcor.de> --------- Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>
This commit is contained in:
parent
be6765447d
commit
cdc33b398c
4 changed files with 17 additions and 31 deletions
|
@ -4413,12 +4413,12 @@ impl Document {
|
|||
})
|
||||
.cloned();
|
||||
|
||||
let cloned_stylesheet = sheet.clone();
|
||||
let insertion_point2 = insertion_point.clone();
|
||||
if self.has_browsing_context() {
|
||||
self.window.layout_mut().add_stylesheet(
|
||||
cloned_stylesheet,
|
||||
insertion_point2.as_ref().map(|s| s.sheet.clone()),
|
||||
sheet.clone(),
|
||||
insertion_point.as_ref().map(|s| s.sheet.clone()),
|
||||
);
|
||||
}
|
||||
|
||||
DocumentOrShadowRoot::add_stylesheet(
|
||||
owner,
|
||||
|
@ -4439,10 +4439,11 @@ impl Document {
|
|||
/// Remove a stylesheet owned by `owner` from the list of document sheets.
|
||||
#[cfg_attr(crown, allow(crown::unrooted_must_root))] // Owner needs to be rooted already necessarily.
|
||||
pub(crate) fn remove_stylesheet(&self, owner: &Element, stylesheet: &Arc<Stylesheet>) {
|
||||
let cloned_stylesheet = stylesheet.clone();
|
||||
if self.has_browsing_context() {
|
||||
self.window
|
||||
.layout_mut()
|
||||
.remove_stylesheet(cloned_stylesheet);
|
||||
.remove_stylesheet(stylesheet.clone());
|
||||
}
|
||||
|
||||
DocumentOrShadowRoot::remove_stylesheet(
|
||||
owner,
|
||||
|
|
|
@ -1,5 +1,4 @@
|
|||
[slot-element-focusable.tentative.html]
|
||||
expected: CRASH
|
||||
[slot element with display: block should be focusable]
|
||||
expected: FAIL
|
||||
|
||||
|
|
|
@ -1,4 +1,9 @@
|
|||
[MouseEvent-prototype-offsetX-offsetY.html]
|
||||
expected: CRASH
|
||||
[MouseEvent's offsetX and offsetY attributes must be relative to the target.]
|
||||
expected: FAIL
|
||||
|
||||
[MouseEvent's offsetX and offsetY attributes must be relative to the shadow host when an event is dispatched inside its shadow tree.]
|
||||
expected: FAIL
|
||||
|
||||
[MouseEvent's offsetX and offsetY attributes must be relative to the target when an event is dispatched on a slotted content.]
|
||||
expected: FAIL
|
||||
|
|
|
@ -1,25 +1,6 @@
|
|||
[ShadowRoot-interface.html]
|
||||
expected: CRASH
|
||||
[ShadowRoot.activeElement must return the focused element of the context object when shadow root is open.]
|
||||
expected: FAIL
|
||||
|
||||
[ShadowRoot.activeElement must return the focused element of the context object when shadow root is closed.]
|
||||
expected: FAIL
|
||||
|
||||
[ShadowRoot.innerHTML must return the result of the HTML fragment serialization algorithm when shadow root is open.]
|
||||
expected: FAIL
|
||||
|
||||
[ShadowRoot.innerHTML must return the result of the HTML fragment serialization algorithm when shadow root is closed.]
|
||||
expected: FAIL
|
||||
|
||||
[ShadowRoot.innerHTML must replace all with the result of invoking the fragment parsing algorithm when shadow root is open.]
|
||||
expected: FAIL
|
||||
|
||||
[ShadowRoot.innerHTML must replace all with the result of invoking the fragment parsing algorithm when shadow root is closed.]
|
||||
expected: FAIL
|
||||
|
||||
[ShadowRoot.styleSheets must return a StyleSheetList sequence containing the shadow root style sheets when shadow root is open.]
|
||||
expected: FAIL
|
||||
|
||||
[ShadowRoot.styleSheets must return a StyleSheetList sequence containing the shadow root style sheets when shadow root is closed.]
|
||||
expected: FAIL
|
||||
|
|
Loading…
Add table
Add a link
Reference in a new issue