Implement element.shadowRoot attribute (#34306)

* Implement Element.shadowRoot attribute

Signed-off-by: Simon Wülker <simon.wuelker@arcor.de>

* Remove comments about shadowdom not being exposed for web content

This is obviously not the case anymore.

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:
Simon Wülker 2024-11-21 01:22:42 +01:00 committed by GitHub
parent c5cf2621b6
commit 527e2d426d
No known key found for this signature in database
GPG key ID: B5690EEEBB952194
15 changed files with 209 additions and 65 deletions

View file

@ -54,6 +54,7 @@ use crate::dom::bindings::codegen::Bindings::MediaErrorBinding::MediaErrorConsta
use crate::dom::bindings::codegen::Bindings::MediaErrorBinding::MediaErrorMethods;
use crate::dom::bindings::codegen::Bindings::NavigatorBinding::Navigator_Binding::NavigatorMethods;
use crate::dom::bindings::codegen::Bindings::NodeBinding::Node_Binding::NodeMethods;
use crate::dom::bindings::codegen::Bindings::ShadowRootBinding::ShadowRootMode;
use crate::dom::bindings::codegen::Bindings::TextTrackBinding::{TextTrackKind, TextTrackMode};
use crate::dom::bindings::codegen::Bindings::URLBinding::URLMethods;
use crate::dom::bindings::codegen::Bindings::WindowBinding::Window_Binding::WindowMethods;
@ -1908,7 +1909,9 @@ impl HTMLMediaElement {
// if we are already showing the controls.
return;
}
let shadow_root = element.attach_shadow(IsUserAgentWidget::Yes).unwrap();
let shadow_root = element
.attach_shadow(IsUserAgentWidget::Yes, ShadowRootMode::Closed)
.unwrap();
let document = document_from_node(self);
let script = HTMLScriptElement::new(
local_name!("script"),