{-# LANGUAGE PatternSynonyms #-}
-- For HasCallStack compatibility
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.MediaControlsHost
       (sortedTrackListForMenu, sortedTrackListForMenu_,
        sortedTrackListForMenuAudio, sortedTrackListForMenuAudio_,
        displayNameForTrack, displayNameForTrack_, setSelectedTextTrack,
        setPreparedToReturnVideoLayerToInline, updateTextTrackContainer,
        enteredFullscreen, exitedFullscreen, generateUUID, generateUUID_,
        base64StringForIconNameAndType, base64StringForIconNameAndType_,
        getCaptionMenuOffItem, getCaptionMenuAutomaticItem,
        getCaptionDisplayMode, getTextTrackContainer,
        getAllowsInlineMediaPlayback, getSupportsFullscreen,
        getIsVideoLayerInline, getUserGestureRequired,
        getIsInMediaDocument, getShouldForceControlsDisplay,
        getExternalDeviceDisplayName, getExternalDeviceType,
        setControlsDependOnPageScaleFactor,
        getControlsDependOnPageScaleFactor, getShadowRootCSSText,
        MediaControlsHost(..), gTypeMediaControlsHost)
       where
import Prelude ((.), (==), (>>=), return, IO, Int, Float, Double, Bool(..), Maybe, maybe, fromIntegral, round, realToFrac, fmap, Show, Read, Eq, Ord, Maybe(..))
import qualified Prelude (error)
import Data.Typeable (Typeable)
import Data.Traversable (mapM)
import Language.Javascript.JSaddle (JSM(..), JSVal(..), JSString, strictEqual, toJSVal, valToStr, valToNumber, valToBool, js, jss, jsf, jsg, function, asyncFunction, new, array, jsUndefined, (!), (!!))
import Data.Int (Int64)
import Data.Word (Word, Word64)
import JSDOM.Types
import Control.Applicative ((<$>))
import Control.Monad (void)
import Control.Lens.Operators ((^.))
import JSDOM.EventTargetClosures (EventName, unsafeEventName, unsafeEventNameAsync)
import JSDOM.Enums

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.sortedTrackListForMenu Mozilla MediaControlsHost.sortedTrackListForMenu documentation> 
sortedTrackListForMenu ::
                       (MonadDOM m) => MediaControlsHost -> TextTrackList -> m [TextTrack]
sortedTrackListForMenu :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> TextTrackList -> m [TextTrack]
sortedTrackListForMenu MediaControlsHost
self TextTrackList
trackList
  = DOM [TextTrack] -> m [TextTrack]
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"sortedTrackListForMenu" [TextTrackList -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal TextTrackList
trackList]) JSM JSVal -> (JSVal -> DOM [TextTrack]) -> DOM [TextTrack]
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM [TextTrack]
forall o. FromJSVal o => JSVal -> JSM [o]
fromJSArrayUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.sortedTrackListForMenu Mozilla MediaControlsHost.sortedTrackListForMenu documentation> 
sortedTrackListForMenu_ ::
                        (MonadDOM m) => MediaControlsHost -> TextTrackList -> m ()
sortedTrackListForMenu_ :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> TextTrackList -> m ()
sortedTrackListForMenu_ MediaControlsHost
self TextTrackList
trackList
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"sortedTrackListForMenu" [TextTrackList -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal TextTrackList
trackList]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.sortedTrackListForMenu Mozilla MediaControlsHost.sortedTrackListForMenu documentation> 
sortedTrackListForMenuAudio ::
                            (MonadDOM m) =>
                              MediaControlsHost -> AudioTrackList -> m [AudioTrack]
sortedTrackListForMenuAudio :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> AudioTrackList -> m [AudioTrack]
sortedTrackListForMenuAudio MediaControlsHost
self AudioTrackList
trackList
  = DOM [AudioTrack] -> m [AudioTrack]
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"sortedTrackListForMenu" [AudioTrackList -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal AudioTrackList
trackList]) JSM JSVal -> (JSVal -> DOM [AudioTrack]) -> DOM [AudioTrack]
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM [AudioTrack]
forall o. FromJSVal o => JSVal -> JSM [o]
fromJSArrayUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.sortedTrackListForMenu Mozilla MediaControlsHost.sortedTrackListForMenu documentation> 
sortedTrackListForMenuAudio_ ::
                             (MonadDOM m) => MediaControlsHost -> AudioTrackList -> m ()
sortedTrackListForMenuAudio_ :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> AudioTrackList -> m ()
sortedTrackListForMenuAudio_ MediaControlsHost
self AudioTrackList
trackList
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"sortedTrackListForMenu" [AudioTrackList -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal AudioTrackList
trackList]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.displayNameForTrack Mozilla MediaControlsHost.displayNameForTrack documentation> 
displayNameForTrack ::
                    (MonadDOM m, IsTrack track, FromJSString result) =>
                      MediaControlsHost -> Maybe track -> m result
displayNameForTrack :: forall (m :: * -> *) track result.
(MonadDOM m, IsTrack track, FromJSString result) =>
MediaControlsHost -> Maybe track -> m result
displayNameForTrack MediaControlsHost
self Maybe track
track
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"displayNameForTrack" [Maybe track -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe track
track]) JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>=
         JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.displayNameForTrack Mozilla MediaControlsHost.displayNameForTrack documentation> 
displayNameForTrack_ ::
                     (MonadDOM m, IsTrack track) =>
                       MediaControlsHost -> Maybe track -> m ()
displayNameForTrack_ :: forall (m :: * -> *) track.
(MonadDOM m, IsTrack track) =>
MediaControlsHost -> Maybe track -> m ()
displayNameForTrack_ MediaControlsHost
self Maybe track
track
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"displayNameForTrack" [Maybe track -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe track
track]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.setSelectedTextTrack Mozilla MediaControlsHost.setSelectedTextTrack documentation> 
setSelectedTextTrack ::
                     (MonadDOM m) => MediaControlsHost -> Maybe TextTrack -> m ()
setSelectedTextTrack :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> Maybe TextTrack -> m ()
setSelectedTextTrack MediaControlsHost
self Maybe TextTrack
track
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"setSelectedTextTrack" [Maybe TextTrack -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Maybe TextTrack
track]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.setPreparedToReturnVideoLayerToInline Mozilla MediaControlsHost.setPreparedToReturnVideoLayerToInline documentation> 
setPreparedToReturnVideoLayerToInline ::
                                      (MonadDOM m) => MediaControlsHost -> Bool -> m ()
setPreparedToReturnVideoLayerToInline :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> Bool -> m ()
setPreparedToReturnVideoLayerToInline MediaControlsHost
self Bool
prepared
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"setPreparedToReturnVideoLayerToInline"
            [Bool -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Bool
prepared]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.updateTextTrackContainer Mozilla MediaControlsHost.updateTextTrackContainer documentation> 
updateTextTrackContainer ::
                         (MonadDOM m) => MediaControlsHost -> m ()
updateTextTrackContainer :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m ()
updateTextTrackContainer MediaControlsHost
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"updateTextTrackContainer" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.enteredFullscreen Mozilla MediaControlsHost.enteredFullscreen documentation> 
enteredFullscreen :: (MonadDOM m) => MediaControlsHost -> m ()
enteredFullscreen :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m ()
enteredFullscreen MediaControlsHost
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"enteredFullscreen" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.exitedFullscreen Mozilla MediaControlsHost.exitedFullscreen documentation> 
exitedFullscreen :: (MonadDOM m) => MediaControlsHost -> m ()
exitedFullscreen :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m ()
exitedFullscreen MediaControlsHost
self
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"exitedFullscreen" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.generateUUID Mozilla MediaControlsHost.generateUUID documentation> 
generateUUID ::
             (MonadDOM m, FromJSString result) => MediaControlsHost -> m result
generateUUID :: forall (m :: * -> *) result.
(MonadDOM m, FromJSString result) =>
MediaControlsHost -> m result
generateUUID MediaControlsHost
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"generateUUID" ()) JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.generateUUID Mozilla MediaControlsHost.generateUUID documentation> 
generateUUID_ :: (MonadDOM m) => MediaControlsHost -> m ()
generateUUID_ :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m ()
generateUUID_ MediaControlsHost
self = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> () -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"generateUUID" ()))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.base64StringForIconNameAndType Mozilla MediaControlsHost.base64StringForIconNameAndType documentation> 
base64StringForIconNameAndType ::
                               (MonadDOM m, ToJSString iconName, ToJSString iconType,
                                FromJSString result) =>
                                 MediaControlsHost -> iconName -> iconType -> m result
base64StringForIconNameAndType :: forall (m :: * -> *) iconName iconType result.
(MonadDOM m, ToJSString iconName, ToJSString iconType,
 FromJSString result) =>
MediaControlsHost -> iconName -> iconType -> m result
base64StringForIconNameAndType MediaControlsHost
self iconName
iconName iconType
iconType
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"base64StringForIconNameAndType"
          [iconName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal iconName
iconName, iconType -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal iconType
iconType])
         JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.base64StringForIconNameAndType Mozilla MediaControlsHost.base64StringForIconNameAndType documentation> 
base64StringForIconNameAndType_ ::
                                (MonadDOM m, ToJSString iconName, ToJSString iconType) =>
                                  MediaControlsHost -> iconName -> iconType -> m ()
base64StringForIconNameAndType_ :: forall (m :: * -> *) iconName iconType.
(MonadDOM m, ToJSString iconName, ToJSString iconType) =>
MediaControlsHost -> iconName -> iconType -> m ()
base64StringForIconNameAndType_ MediaControlsHost
self iconName
iconName iconType
iconType
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
         (MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> [JSM JSVal] -> JSF
forall name args.
(ToJSString name, MakeArgs args) =>
name -> args -> JSF
jsf String
"base64StringForIconNameAndType"
            [iconName -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal iconName
iconName, iconType -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal iconType
iconType]))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.captionMenuOffItem Mozilla MediaControlsHost.captionMenuOffItem documentation> 
getCaptionMenuOffItem ::
                      (MonadDOM m) => MediaControlsHost -> m TextTrack
getCaptionMenuOffItem :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> m TextTrack
getCaptionMenuOffItem MediaControlsHost
self
  = DOM TextTrack -> m TextTrack
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"captionMenuOffItem") JSM JSVal -> (JSVal -> DOM TextTrack) -> DOM TextTrack
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM TextTrack
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.captionMenuAutomaticItem Mozilla MediaControlsHost.captionMenuAutomaticItem documentation> 
getCaptionMenuAutomaticItem ::
                            (MonadDOM m) => MediaControlsHost -> m TextTrack
getCaptionMenuAutomaticItem :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> m TextTrack
getCaptionMenuAutomaticItem MediaControlsHost
self
  = DOM TextTrack -> m TextTrack
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"captionMenuAutomaticItem") JSM JSVal -> (JSVal -> DOM TextTrack) -> DOM TextTrack
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM TextTrack
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.captionDisplayMode Mozilla MediaControlsHost.captionDisplayMode documentation> 
getCaptionDisplayMode ::
                      (MonadDOM m, FromJSString result) => MediaControlsHost -> m result
getCaptionDisplayMode :: forall (m :: * -> *) result.
(MonadDOM m, FromJSString result) =>
MediaControlsHost -> m result
getCaptionDisplayMode MediaControlsHost
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"captionDisplayMode") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.textTrackContainer Mozilla MediaControlsHost.textTrackContainer documentation> 
getTextTrackContainer ::
                      (MonadDOM m) => MediaControlsHost -> m HTMLElement
getTextTrackContainer :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> m HTMLElement
getTextTrackContainer MediaControlsHost
self
  = DOM HTMLElement -> m HTMLElement
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"textTrackContainer") JSM JSVal -> (JSVal -> DOM HTMLElement) -> DOM HTMLElement
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM HTMLElement
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.allowsInlineMediaPlayback Mozilla MediaControlsHost.allowsInlineMediaPlayback documentation> 
getAllowsInlineMediaPlayback ::
                             (MonadDOM m) => MediaControlsHost -> m Bool
getAllowsInlineMediaPlayback :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m Bool
getAllowsInlineMediaPlayback MediaControlsHost
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"allowsInlineMediaPlayback") JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.supportsFullscreen Mozilla MediaControlsHost.supportsFullscreen documentation> 
getSupportsFullscreen ::
                      (MonadDOM m) => MediaControlsHost -> m Bool
getSupportsFullscreen :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m Bool
getSupportsFullscreen MediaControlsHost
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"supportsFullscreen") JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.isVideoLayerInline Mozilla MediaControlsHost.isVideoLayerInline documentation> 
getIsVideoLayerInline ::
                      (MonadDOM m) => MediaControlsHost -> m Bool
getIsVideoLayerInline :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m Bool
getIsVideoLayerInline MediaControlsHost
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"isVideoLayerInline") JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.userGestureRequired Mozilla MediaControlsHost.userGestureRequired documentation> 
getUserGestureRequired ::
                       (MonadDOM m) => MediaControlsHost -> m Bool
getUserGestureRequired :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m Bool
getUserGestureRequired MediaControlsHost
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"userGestureRequired") JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.isInMediaDocument Mozilla MediaControlsHost.isInMediaDocument documentation> 
getIsInMediaDocument :: (MonadDOM m) => MediaControlsHost -> m Bool
getIsInMediaDocument :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m Bool
getIsInMediaDocument MediaControlsHost
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"isInMediaDocument") JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.shouldForceControlsDisplay Mozilla MediaControlsHost.shouldForceControlsDisplay documentation> 
getShouldForceControlsDisplay ::
                              (MonadDOM m) => MediaControlsHost -> m Bool
getShouldForceControlsDisplay :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m Bool
getShouldForceControlsDisplay MediaControlsHost
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"shouldForceControlsDisplay") JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.externalDeviceDisplayName Mozilla MediaControlsHost.externalDeviceDisplayName documentation> 
getExternalDeviceDisplayName ::
                             (MonadDOM m, FromJSString result) => MediaControlsHost -> m result
getExternalDeviceDisplayName :: forall (m :: * -> *) result.
(MonadDOM m, FromJSString result) =>
MediaControlsHost -> m result
getExternalDeviceDisplayName MediaControlsHost
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"externalDeviceDisplayName") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.externalDeviceType Mozilla MediaControlsHost.externalDeviceType documentation> 
getExternalDeviceType ::
                      (MonadDOM m) => MediaControlsHost -> m DeviceType
getExternalDeviceType :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> m DeviceType
getExternalDeviceType MediaControlsHost
self
  = DOM DeviceType -> m DeviceType
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"externalDeviceType") JSM JSVal -> (JSVal -> DOM DeviceType) -> DOM DeviceType
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM DeviceType
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.controlsDependOnPageScaleFactor Mozilla MediaControlsHost.controlsDependOnPageScaleFactor documentation> 
setControlsDependOnPageScaleFactor ::
                                   (MonadDOM m) => MediaControlsHost -> Bool -> m ()
setControlsDependOnPageScaleFactor :: forall (m :: * -> *).
MonadDOM m =>
MediaControlsHost -> Bool -> m ()
setControlsDependOnPageScaleFactor MediaControlsHost
self Bool
val
  = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      (MediaControlsHost
self MediaControlsHost
-> Getting (DOM ()) MediaControlsHost (DOM ()) -> DOM ()
forall s a. s -> Getting a s a -> a
^. String
-> JSM JSVal
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
forall name val.
(ToJSString name, ToJSVal val) =>
name
-> val
-> forall o. MakeObject o => IndexPreservingGetter o (DOM ())
jss String
"controlsDependOnPageScaleFactor" (Bool -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Bool
val))

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.controlsDependOnPageScaleFactor Mozilla MediaControlsHost.controlsDependOnPageScaleFactor documentation> 
getControlsDependOnPageScaleFactor ::
                                   (MonadDOM m) => MediaControlsHost -> m Bool
getControlsDependOnPageScaleFactor :: forall (m :: * -> *). MonadDOM m => MediaControlsHost -> m Bool
getControlsDependOnPageScaleFactor MediaControlsHost
self
  = DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
      ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"controlsDependOnPageScaleFactor") JSM JSVal -> (JSVal -> DOM Bool) -> DOM Bool
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM Bool
forall value. ToJSVal value => value -> DOM Bool
valToBool)

-- | <https://developer.mozilla.org/en-US/docs/Web/API/MediaControlsHost.shadowRootCSSText Mozilla MediaControlsHost.shadowRootCSSText documentation> 
getShadowRootCSSText ::
                     (MonadDOM m, FromJSString result) => MediaControlsHost -> m result
getShadowRootCSSText :: forall (m :: * -> *) result.
(MonadDOM m, FromJSString result) =>
MediaControlsHost -> m result
getShadowRootCSSText MediaControlsHost
self
  = DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((MediaControlsHost
self MediaControlsHost
-> Getting (JSM JSVal) MediaControlsHost (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter MediaControlsHost (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"shadowRootCSSText") JSM JSVal -> (JSVal -> DOM result) -> DOM result
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> DOM result
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)