diff options
Diffstat (limited to 'components/script/dom/htmlmediaelement.rs')
-rw-r--r-- | components/script/dom/htmlmediaelement.rs | 16 |
1 files changed, 3 insertions, 13 deletions
diff --git a/components/script/dom/htmlmediaelement.rs b/components/script/dom/htmlmediaelement.rs index 690dd928f45..a1ab6d08e68 100644 --- a/components/script/dom/htmlmediaelement.rs +++ b/components/script/dom/htmlmediaelement.rs @@ -71,7 +71,6 @@ use net_traits::{CoreResourceMsg, FetchChannels, FetchMetadata, FetchResponseLis use net_traits::{NetworkError, ResourceFetchTiming, ResourceTimingType}; use script_layout_interface::HTMLMediaData; use servo_config::pref; -use servo_media::player::context::{GlContext, NativeDisplay, PlayerGLContext}; use servo_media::player::frame::{Frame, FrameRenderer}; use servo_media::player::{PlaybackState, Player, PlayerError, PlayerEvent, StreamType}; use servo_media::{ServoMedia, SupportsMediaType}; @@ -162,16 +161,6 @@ impl FrameRenderer for MediaFrameRenderer { } } -struct PlayerContextDummy(); -impl PlayerGLContext for PlayerContextDummy { - fn get_gl_context(&self) -> GlContext { - return GlContext::Unknown; - } - fn get_native_display(&self) -> NativeDisplay { - return NativeDisplay::Unknown; - } -} - #[must_root] #[derive(JSTraceable, MallocSizeOf)] enum SrcObject { @@ -1222,22 +1211,23 @@ impl HTMLMediaElement { _ => StreamType::Seekable, }; + let window = window_from_node(self); let (action_sender, action_receiver) = ipc::channel().unwrap(); let renderer: Option<Arc<Mutex<dyn FrameRenderer>>> = match self.media_type_id() { HTMLMediaElementTypeId::HTMLAudioElement => None, HTMLMediaElementTypeId::HTMLVideoElement => Some(self.frame_renderer.clone()), }; + let player = ServoMedia::get().unwrap().create_player( stream_type, action_sender, renderer, - Box::new(PlayerContextDummy()), + Box::new(window.get_player_context()), ); *self.player.borrow_mut() = Some(player); let trusted_node = Trusted::new(self); - let window = window_from_node(self); let (task_source, canceller) = window .task_manager() .media_element_task_source_with_canceller(); |