#[repr(C)]pub(crate) struct MediaSession {
reflector_: Reflector,
metadata: DomRefCell<Option<MediaMetadata>>,
playback_state: DomRefCell<MediaSessionPlaybackState>,
action_handlers: DomRefCell<HashMapTracedValues<MediaSessionActionType, Rc<MediaSessionActionHandler<DomTypeHolder>>, FxBuildHasher>>,
media_instance: MutNullableDom<HTMLMediaElement>,
}Fields§
§reflector_: Reflector§metadata: DomRefCell<Option<MediaMetadata>>§playback_state: DomRefCell<MediaSessionPlaybackState>§action_handlers: DomRefCell<HashMapTracedValues<MediaSessionActionType, Rc<MediaSessionActionHandler<DomTypeHolder>>, FxBuildHasher>>§media_instance: MutNullableDom<HTMLMediaElement>The media instance controlled by this media session. For now only HTMLMediaElements are controlled by media sessions.
Implementations§
Source§impl MediaSession
impl MediaSession
fn __assert_parent_type(&self)
Source§impl MediaSession
impl MediaSession
fn new_inherited() -> MediaSession
pub(crate) fn new(window: &Window, can_gc: CanGc) -> DomRoot<MediaSession>
pub(crate) fn register_media_instance(&self, media_instance: &HTMLMediaElement)
pub(crate) fn handle_action( &self, action: MediaSessionActionType, can_gc: CanGc, )
pub(crate) fn send_event(&self, event: MediaSessionEvent)
pub(crate) fn update_title(&self, title: String)
Trait Implementations§
Source§impl DomObject for MediaSession
impl DomObject for MediaSession
Source§impl DomObjectWrap<DomTypeHolder> for MediaSession
impl DomObjectWrap<DomTypeHolder> for MediaSession
Source§const WRAP: unsafe fn(SafeJSContext, &GlobalScope, Option<HandleObject<'_>>, Box<Self>, CanGc) -> Root<Dom<Self>> = {script_bindings::codegen::GenericBindings::MediaSessionBinding::Wrap::<dom::bindings::codegen::DomTypeHolder::DomTypeHolder> as for<'a, 'b> unsafe fn(script_bindings::script_runtime::JSContext, &'a dom::globalscope::GlobalScope, std::option::Option<js::rust::Handle<'b, *mut js::jsapi::JSObject>>, std::boxed::Box<dom::media::mediasession::MediaSession>, script_bindings::script_runtime::CanGc) -> script_bindings::root::Root<script_bindings::root::Dom<dom::media::mediasession::MediaSession>>}
const WRAP: unsafe fn(SafeJSContext, &GlobalScope, Option<HandleObject<'_>>, Box<Self>, CanGc) -> Root<Dom<Self>> = {script_bindings::codegen::GenericBindings::MediaSessionBinding::Wrap::<dom::bindings::codegen::DomTypeHolder::DomTypeHolder> as for<'a, 'b> unsafe fn(script_bindings::script_runtime::JSContext, &'a dom::globalscope::GlobalScope, std::option::Option<js::rust::Handle<'b, *mut js::jsapi::JSObject>>, std::boxed::Box<dom::media::mediasession::MediaSession>, script_bindings::script_runtime::CanGc) -> script_bindings::root::Root<script_bindings::root::Dom<dom::media::mediasession::MediaSession>>}
Function pointer to the general wrap function type
Source§impl HasParent for MediaSession
impl HasParent for MediaSession
Source§impl IDLInterface for MediaSession
impl IDLInterface for MediaSession
Source§impl MallocSizeOf for MediaSession
impl MallocSizeOf for MediaSession
Source§fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
fn size_of(&self, ops: &mut MallocSizeOfOps) -> usize
Measure the heap usage of all descendant heap-allocated structures, but
not the space taken up by the value itself.
Source§impl MediaSessionMethods<DomTypeHolder> for MediaSession
impl MediaSessionMethods<DomTypeHolder> for MediaSession
Source§fn GetMetadata(&self, can_gc: CanGc) -> Option<DomRoot<MediaMetadata>>
fn GetMetadata(&self, can_gc: CanGc) -> Option<DomRoot<MediaMetadata>>
Source§fn SetMetadata(&self, metadata: Option<&MediaMetadata>)
fn SetMetadata(&self, metadata: Option<&MediaMetadata>)
Source§fn PlaybackState(&self) -> MediaSessionPlaybackState
fn PlaybackState(&self) -> MediaSessionPlaybackState
Source§fn SetPlaybackState(&self, state: MediaSessionPlaybackState)
fn SetPlaybackState(&self, state: MediaSessionPlaybackState)
Source§fn SetActionHandler(
&self,
action: MediaSessionAction,
handler: Option<Rc<MediaSessionActionHandler<DomTypeHolder>>>,
)
fn SetActionHandler( &self, action: MediaSessionAction, handler: Option<Rc<MediaSessionActionHandler<DomTypeHolder>>>, )
Source§fn SetPositionState(
&self,
state: &MediaPositionState,
can_gc: CanGc,
) -> Fallible<()>
fn SetPositionState( &self, state: &MediaPositionState, can_gc: CanGc, ) -> Fallible<()>
Source§impl MutDomObject for MediaSession
impl MutDomObject for MediaSession
Source§impl PartialEq for MediaSession
impl PartialEq for MediaSession
Source§impl ToJSValConvertible for MediaSession
impl ToJSValConvertible for MediaSession
Source§impl Traceable for MediaSession
impl Traceable for MediaSession
impl Eq for MediaSession
Auto Trait Implementations§
impl !Freeze for MediaSession
impl !RefUnwindSafe for MediaSession
impl !Send for MediaSession
impl !Sync for MediaSession
impl Unpin for MediaSession
impl !UnwindSafe for MediaSession
Blanket Implementations§
Source§impl<T> BorrowMut<T> for Twhere
T: ?Sized,
impl<T> BorrowMut<T> for Twhere
T: ?Sized,
Source§fn borrow_mut(&mut self) -> &mut T
fn borrow_mut(&mut self) -> &mut T
Mutably borrows from an owned value. Read more
Source§impl<D, T> DomGlobalGeneric<D> for T
impl<D, T> DomGlobalGeneric<D> for T
Source§fn global_(&self, realm: InRealm<'_>) -> Root<Dom<<D as DomTypes>::GlobalScope>>where
Self: Sized,
fn global_(&self, realm: InRealm<'_>) -> Root<Dom<<D as DomTypes>::GlobalScope>>where
Self: Sized,
Returns the [
GlobalScope] of the realm that the DomObject was created in. If this
object is a Node, this will be different from it’s owning Document if adopted by. For
Nodes it’s almost always better to use NodeTraits::owning_global.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<Q, K> Equivalent<K> for Q
impl<Q, K> Equivalent<K> for Q
Source§fn equivalent(&self, key: &K) -> bool
fn equivalent(&self, key: &K) -> bool
Compare self to
key and return true if they are equal.Source§impl<T> Filterable for T
impl<T> Filterable for T
Source§fn filterable(
self,
filter_name: &'static str,
) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
fn filterable( self, filter_name: &'static str, ) -> RequestFilterDataProvider<T, fn(DataRequest<'_>) -> bool>
Creates a filterable data provider with the given name for debugging. Read more
Source§impl<T> Instrument for T
impl<T> Instrument for T
Source§fn instrument(self, span: Span) -> Instrumented<Self>
fn instrument(self, span: Span) -> Instrumented<Self>
Source§fn in_current_span(self) -> Instrumented<Self>
fn in_current_span(self) -> Instrumented<Self>
Source§impl<T> IntoEither for T
impl<T> IntoEither for T
Source§fn into_either(self, into_left: bool) -> Either<Self, Self>
fn into_either(self, into_left: bool) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left is true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
fn into_either_with<F>(self, into_left: F) -> Either<Self, Self>
Converts
self into a Left variant of Either<Self, Self>
if into_left(&self) returns true.
Converts self into a Right variant of Either<Self, Self>
otherwise. Read moreSource§impl<T> MaybeBoxed<Box<T>> for T
impl<T> MaybeBoxed<Box<T>> for T
Source§fn maybe_boxed(self) -> Box<T>
fn maybe_boxed(self) -> Box<T>
Convert
Source§impl<T> MaybeBoxed<T> for T
impl<T> MaybeBoxed<T> for T
Source§fn maybe_boxed(self) -> T
fn maybe_boxed(self) -> T
Convert