{-# LANGUAGE PatternSynonyms #-}
{-# LANGUAGE ImplicitParams, ConstraintKinds, KindSignatures #-}
{-# OPTIONS_GHC -fno-warn-unused-imports #-}
module JSDOM.Generated.HTMLVideoElement
(webkitEnterFullscreen, webkitExitFullscreen,
webkitEnterFullScreen, webkitExitFullScreen,
webkitSupportsPresentationMode, webkitSupportsPresentationMode_,
webkitSetPresentationMode, setWidth, getWidth, setHeight,
getHeight, getVideoWidth, getVideoHeight, setPoster, getPoster,
setPlaysInline, getPlaysInline, getWebkitSupportsFullscreen,
getWebkitDisplayingFullscreen,
setWebkitWirelessVideoPlaybackDisabled,
getWebkitWirelessVideoPlaybackDisabled, getWebkitDecodedFrameCount,
getWebkitDroppedFrameCount, getWebkitPresentationMode,
HTMLVideoElement(..), gTypeHTMLVideoElement)
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
webkitEnterFullscreen :: (MonadDOM m) => HTMLVideoElement -> m ()
webkitEnterFullscreen :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m ()
webkitEnterFullscreen HTMLVideoElement
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 (HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (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
"webkitEnterFullscreen" ()))
webkitExitFullscreen :: (MonadDOM m) => HTMLVideoElement -> m ()
webkitExitFullscreen :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m ()
webkitExitFullscreen HTMLVideoElement
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 (HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (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
"webkitExitFullscreen" ()))
webkitEnterFullScreen :: (MonadDOM m) => HTMLVideoElement -> m ()
webkitEnterFullScreen :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m ()
webkitEnterFullScreen HTMLVideoElement
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 (HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (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
"webkitEnterFullScreen" ()))
webkitExitFullScreen :: (MonadDOM m) => HTMLVideoElement -> m ()
webkitExitFullScreen :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m ()
webkitExitFullScreen HTMLVideoElement
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 (HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (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
"webkitExitFullScreen" ()))
webkitSupportsPresentationMode ::
(MonadDOM m) => HTMLVideoElement -> VideoPresentationMode -> m Bool
webkitSupportsPresentationMode :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> VideoPresentationMode -> m Bool
webkitSupportsPresentationMode HTMLVideoElement
self VideoPresentationMode
mode
= DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (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
"webkitSupportsPresentationMode" [VideoPresentationMode -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal VideoPresentationMode
mode]) 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)
webkitSupportsPresentationMode_ ::
(MonadDOM m) => HTMLVideoElement -> VideoPresentationMode -> m ()
webkitSupportsPresentationMode_ :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> VideoPresentationMode -> m ()
webkitSupportsPresentationMode_ HTMLVideoElement
self VideoPresentationMode
mode
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void
(HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (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
"webkitSupportsPresentationMode" [VideoPresentationMode -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal VideoPresentationMode
mode]))
webkitSetPresentationMode ::
(MonadDOM m) => HTMLVideoElement -> VideoPresentationMode -> m ()
webkitSetPresentationMode :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> VideoPresentationMode -> m ()
webkitSetPresentationMode HTMLVideoElement
self VideoPresentationMode
mode
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(JSM JSVal -> DOM ()
forall (f :: * -> *) a. Functor f => f a -> f ()
void (HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (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
"webkitSetPresentationMode" [VideoPresentationMode -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal VideoPresentationMode
mode]))
setWidth :: (MonadDOM m) => HTMLVideoElement -> Word -> m ()
setWidth :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> Word -> m ()
setWidth HTMLVideoElement
self Word
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (HTMLVideoElement
self HTMLVideoElement
-> Getting (DOM ()) HTMLVideoElement (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
"width" (Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
val))
getWidth :: (MonadDOM m) => HTMLVideoElement -> m Word
getWidth :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Word
getWidth HTMLVideoElement
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (Double -> Word
forall b. Integral b => Double -> b
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"width") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))
setHeight :: (MonadDOM m) => HTMLVideoElement -> Word -> m ()
setHeight :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> Word -> m ()
setHeight HTMLVideoElement
self Word
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (HTMLVideoElement
self HTMLVideoElement
-> Getting (DOM ()) HTMLVideoElement (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
"height" (Word -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Word
val))
getHeight :: (MonadDOM m) => HTMLVideoElement -> m Word
getHeight :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Word
getHeight HTMLVideoElement
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (Double -> Word
forall b. Integral b => Double -> b
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"height") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))
getVideoWidth :: (MonadDOM m) => HTMLVideoElement -> m Word
getVideoWidth :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Word
getVideoWidth HTMLVideoElement
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (Double -> Word
forall b. Integral b => Double -> b
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"videoWidth") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))
getVideoHeight :: (MonadDOM m) => HTMLVideoElement -> m Word
getVideoHeight :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Word
getVideoHeight HTMLVideoElement
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (Double -> Word
forall b. Integral b => Double -> b
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"videoHeight") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))
setPoster ::
(MonadDOM m, ToJSString val) => HTMLVideoElement -> val -> m ()
setPoster :: forall (m :: * -> *) val.
(MonadDOM m, ToJSString val) =>
HTMLVideoElement -> val -> m ()
setPoster HTMLVideoElement
self val
val = DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (HTMLVideoElement
self HTMLVideoElement
-> Getting (DOM ()) HTMLVideoElement (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
"poster" (val -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal val
val))
getPoster ::
(MonadDOM m, FromJSString result) => HTMLVideoElement -> m result
getPoster :: forall (m :: * -> *) result.
(MonadDOM m, FromJSString result) =>
HTMLVideoElement -> m result
getPoster HTMLVideoElement
self
= DOM result -> m result
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"poster") 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)
setPlaysInline :: (MonadDOM m) => HTMLVideoElement -> Bool -> m ()
setPlaysInline :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> Bool -> m ()
setPlaysInline HTMLVideoElement
self Bool
val
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM (HTMLVideoElement
self HTMLVideoElement
-> Getting (DOM ()) HTMLVideoElement (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
"playsInline" (Bool -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Bool
val))
getPlaysInline :: (MonadDOM m) => HTMLVideoElement -> m Bool
getPlaysInline :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Bool
getPlaysInline HTMLVideoElement
self
= DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"playsInline") 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)
getWebkitSupportsFullscreen ::
(MonadDOM m) => HTMLVideoElement -> m Bool
getWebkitSupportsFullscreen :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Bool
getWebkitSupportsFullscreen HTMLVideoElement
self
= DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"webkitSupportsFullscreen") 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)
getWebkitDisplayingFullscreen ::
(MonadDOM m) => HTMLVideoElement -> m Bool
getWebkitDisplayingFullscreen :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Bool
getWebkitDisplayingFullscreen HTMLVideoElement
self
= DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM ((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"webkitDisplayingFullscreen") 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)
setWebkitWirelessVideoPlaybackDisabled ::
(MonadDOM m) => HTMLVideoElement -> Bool -> m ()
setWebkitWirelessVideoPlaybackDisabled :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> Bool -> m ()
setWebkitWirelessVideoPlaybackDisabled HTMLVideoElement
self Bool
val
= DOM () -> m ()
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(HTMLVideoElement
self HTMLVideoElement
-> Getting (DOM ()) HTMLVideoElement (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
"webkitWirelessVideoPlaybackDisabled" (Bool -> JSM JSVal
forall a. ToJSVal a => a -> JSM JSVal
toJSVal Bool
val))
getWebkitWirelessVideoPlaybackDisabled ::
(MonadDOM m) => HTMLVideoElement -> m Bool
getWebkitWirelessVideoPlaybackDisabled :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Bool
getWebkitWirelessVideoPlaybackDisabled HTMLVideoElement
self
= DOM Bool -> m Bool
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"webkitWirelessVideoPlaybackDisabled") 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)
getWebkitDecodedFrameCount ::
(MonadDOM m) => HTMLVideoElement -> m Word
getWebkitDecodedFrameCount :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Word
getWebkitDecodedFrameCount HTMLVideoElement
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(Double -> Word
forall b. Integral b => Double -> b
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"webkitDecodedFrameCount") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))
getWebkitDroppedFrameCount ::
(MonadDOM m) => HTMLVideoElement -> m Word
getWebkitDroppedFrameCount :: forall (m :: * -> *). MonadDOM m => HTMLVideoElement -> m Word
getWebkitDroppedFrameCount HTMLVideoElement
self
= DOM Word -> m Word
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
(Double -> Word
forall b. Integral b => Double -> b
forall a b. (RealFrac a, Integral b) => a -> b
round (Double -> Word) -> JSM Double -> DOM Word
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$>
((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"webkitDroppedFrameCount") JSM JSVal -> (JSVal -> JSM Double) -> JSM Double
forall a b. JSM a -> (a -> JSM b) -> JSM b
forall (m :: * -> *) a b. Monad m => m a -> (a -> m b) -> m b
>>= JSVal -> JSM Double
forall value. ToJSVal value => value -> JSM Double
valToNumber))
getWebkitPresentationMode ::
(MonadDOM m) => HTMLVideoElement -> m VideoPresentationMode
getWebkitPresentationMode :: forall (m :: * -> *).
MonadDOM m =>
HTMLVideoElement -> m VideoPresentationMode
getWebkitPresentationMode HTMLVideoElement
self
= DOM VideoPresentationMode -> m VideoPresentationMode
forall (m :: * -> *) a. MonadDOM m => DOM a -> m a
liftDOM
((HTMLVideoElement
self HTMLVideoElement
-> Getting (JSM JSVal) HTMLVideoElement (JSM JSVal) -> JSM JSVal
forall s a. s -> Getting a s a -> a
^. String -> IndexPreservingGetter HTMLVideoElement (JSM JSVal)
forall s name.
(MakeObject s, ToJSString name) =>
name -> IndexPreservingGetter s (JSM JSVal)
js String
"webkitPresentationMode") JSM JSVal
-> (JSVal -> DOM VideoPresentationMode)
-> DOM VideoPresentationMode
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 VideoPresentationMode
forall a. FromJSVal a => JSVal -> JSM a
fromJSValUnchecked)