{- |
Copyright  : Will Thompson, Iñaki García Etxebarria and Jonas Platte
License    : LGPL-2.1
Maintainer : Iñaki García Etxebarria (garetxe@gmail.com)
-}

module GI.WebKit2.Functions
    ( 

 -- * Methods
-- ** downloadErrorQuark
    downloadErrorQuark                      ,


-- ** faviconDatabaseErrorQuark
    faviconDatabaseErrorQuark               ,


-- ** getMajorVersion
    getMajorVersion                         ,


-- ** getMicroVersion
    getMicroVersion                         ,


-- ** getMinorVersion
    getMinorVersion                         ,


-- ** javascriptErrorQuark
    javascriptErrorQuark                    ,


-- ** networkErrorQuark
    networkErrorQuark                       ,


-- ** pluginErrorQuark
    pluginErrorQuark                        ,


-- ** policyErrorQuark
    policyErrorQuark                        ,


-- ** printErrorQuark
    printErrorQuark                         ,


-- ** snapshotErrorQuark
    snapshotErrorQuark                      ,


-- ** userMediaPermissionIsForAudioDevice
    userMediaPermissionIsForAudioDevice     ,


-- ** userMediaPermissionIsForVideoDevice
    userMediaPermissionIsForVideoDevice     ,




    ) where

import Prelude ()
import Data.GI.Base.ShortPrelude

import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map

import GI.WebKit2.Types
import GI.WebKit2.Callbacks

-- function webkit_user_media_permission_is_for_video_device
-- Args : [Arg {argName = "request", argType = TInterface "WebKit2" "UserMediaPermissionRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "request", argType = TInterface "WebKit2" "UserMediaPermissionRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False

foreign import ccall "webkit_user_media_permission_is_for_video_device" webkit_user_media_permission_is_for_video_device :: 
    Ptr UserMediaPermissionRequest ->       -- request : TInterface "WebKit2" "UserMediaPermissionRequest"
    IO CInt


userMediaPermissionIsForVideoDevice ::
    (MonadIO m, UserMediaPermissionRequestK a) =>
    a ->                                    -- request
    m Bool
userMediaPermissionIsForVideoDevice request = liftIO $ do
    let request' = unsafeManagedPtrCastPtr request
    result <- webkit_user_media_permission_is_for_video_device request'
    let result' = (/= 0) result
    touchManagedPtr request
    return result'


-- function webkit_user_media_permission_is_for_audio_device
-- Args : [Arg {argName = "request", argType = TInterface "WebKit2" "UserMediaPermissionRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- Lengths : []
-- hInArgs : [Arg {argName = "request", argType = TInterface "WebKit2" "UserMediaPermissionRequest", direction = DirectionIn, mayBeNull = False, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, transfer = TransferNothing}]
-- returnType : TBasicType TBoolean
-- throws : False
-- Skip return : False

foreign import ccall "webkit_user_media_permission_is_for_audio_device" webkit_user_media_permission_is_for_audio_device :: 
    Ptr UserMediaPermissionRequest ->       -- request : TInterface "WebKit2" "UserMediaPermissionRequest"
    IO CInt


userMediaPermissionIsForAudioDevice ::
    (MonadIO m, UserMediaPermissionRequestK a) =>
    a ->                                    -- request
    m Bool
userMediaPermissionIsForAudioDevice request = liftIO $ do
    let request' = unsafeManagedPtrCastPtr request
    result <- webkit_user_media_permission_is_for_audio_device request'
    let result' = (/= 0) result
    touchManagedPtr request
    return result'


-- function webkit_snapshot_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_snapshot_error_quark" webkit_snapshot_error_quark :: 
    IO Word32


snapshotErrorQuark ::
    (MonadIO m) =>
    m Word32
snapshotErrorQuark  = liftIO $ do
    result <- webkit_snapshot_error_quark
    return result


-- function webkit_print_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_print_error_quark" webkit_print_error_quark :: 
    IO Word32


printErrorQuark ::
    (MonadIO m) =>
    m Word32
printErrorQuark  = liftIO $ do
    result <- webkit_print_error_quark
    return result


-- function webkit_policy_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_policy_error_quark" webkit_policy_error_quark :: 
    IO Word32


policyErrorQuark ::
    (MonadIO m) =>
    m Word32
policyErrorQuark  = liftIO $ do
    result <- webkit_policy_error_quark
    return result


-- function webkit_plugin_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_plugin_error_quark" webkit_plugin_error_quark :: 
    IO Word32


pluginErrorQuark ::
    (MonadIO m) =>
    m Word32
pluginErrorQuark  = liftIO $ do
    result <- webkit_plugin_error_quark
    return result


-- function webkit_network_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_network_error_quark" webkit_network_error_quark :: 
    IO Word32


networkErrorQuark ::
    (MonadIO m) =>
    m Word32
networkErrorQuark  = liftIO $ do
    result <- webkit_network_error_quark
    return result


-- function webkit_javascript_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_javascript_error_quark" webkit_javascript_error_quark :: 
    IO Word32


javascriptErrorQuark ::
    (MonadIO m) =>
    m Word32
javascriptErrorQuark  = liftIO $ do
    result <- webkit_javascript_error_quark
    return result


-- function webkit_get_minor_version
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_get_minor_version" webkit_get_minor_version :: 
    IO Word32


getMinorVersion ::
    (MonadIO m) =>
    m Word32
getMinorVersion  = liftIO $ do
    result <- webkit_get_minor_version
    return result


-- function webkit_get_micro_version
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_get_micro_version" webkit_get_micro_version :: 
    IO Word32


getMicroVersion ::
    (MonadIO m) =>
    m Word32
getMicroVersion  = liftIO $ do
    result <- webkit_get_micro_version
    return result


-- function webkit_get_major_version
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_get_major_version" webkit_get_major_version :: 
    IO Word32


getMajorVersion ::
    (MonadIO m) =>
    m Word32
getMajorVersion  = liftIO $ do
    result <- webkit_get_major_version
    return result


-- function webkit_favicon_database_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_favicon_database_error_quark" webkit_favicon_database_error_quark :: 
    IO Word32


faviconDatabaseErrorQuark ::
    (MonadIO m) =>
    m Word32
faviconDatabaseErrorQuark  = liftIO $ do
    result <- webkit_favicon_database_error_quark
    return result


-- function webkit_download_error_quark
-- Args : []
-- Lengths : []
-- hInArgs : []
-- returnType : TBasicType TUInt32
-- throws : False
-- Skip return : False

foreign import ccall "webkit_download_error_quark" webkit_download_error_quark :: 
    IO Word32


downloadErrorQuark ::
    (MonadIO m) =>
    m Word32
downloadErrorQuark  = liftIO $ do
    result <- webkit_download_error_quark
    return result