{-# LANGUAGE TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.WebKit2.Interfaces.PermissionRequest
(
PermissionRequest(..) ,
noPermissionRequest ,
IsPermissionRequest ,
toPermissionRequest ,
#if defined(ENABLE_OVERLOADING)
ResolvePermissionRequestMethod ,
#endif
#if defined(ENABLE_OVERLOADING)
PermissionRequestAllowMethodInfo ,
#endif
permissionRequestAllow ,
#if defined(ENABLE_OVERLOADING)
PermissionRequestDenyMethodInfo ,
#endif
permissionRequestDeny ,
) where
import Data.GI.Base.ShortPrelude
import qualified Data.GI.Base.ShortPrelude as SP
import qualified Data.GI.Base.Overloading as O
import qualified Prelude as P
import qualified Data.GI.Base.Attributes as GI.Attributes
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GValue as B.GValue
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
import qualified Data.GI.Base.Properties as B.Properties
import qualified Data.GI.Base.Signals as B.Signals
import qualified Data.Text as T
import qualified Data.ByteString.Char8 as B
import qualified Data.Map as Map
import qualified Foreign.Ptr as FP
import qualified GHC.OverloadedLabels as OL
import qualified GI.GObject.Objects.Object as GObject.Object
newtype PermissionRequest = PermissionRequest (ManagedPtr PermissionRequest)
deriving (PermissionRequest -> PermissionRequest -> Bool
(PermissionRequest -> PermissionRequest -> Bool)
-> (PermissionRequest -> PermissionRequest -> Bool)
-> Eq PermissionRequest
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
/= :: PermissionRequest -> PermissionRequest -> Bool
$c/= :: PermissionRequest -> PermissionRequest -> Bool
== :: PermissionRequest -> PermissionRequest -> Bool
$c== :: PermissionRequest -> PermissionRequest -> Bool
Eq)
noPermissionRequest :: Maybe PermissionRequest
noPermissionRequest :: Maybe PermissionRequest
noPermissionRequest = Maybe PermissionRequest
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList PermissionRequest = PermissionRequestSignalList
type PermissionRequestSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_permission_request_get_type"
c_webkit_permission_request_get_type :: IO GType
instance GObject PermissionRequest where
gobjectType :: IO GType
gobjectType = IO GType
c_webkit_permission_request_get_type
instance B.GValue.IsGValue PermissionRequest where
toGValue :: PermissionRequest -> IO GValue
toGValue o :: PermissionRequest
o = do
GType
gtype <- IO GType
c_webkit_permission_request_get_type
PermissionRequest
-> (Ptr PermissionRequest -> IO GValue) -> IO GValue
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr PermissionRequest
o (GType
-> (GValue -> Ptr PermissionRequest -> IO ())
-> Ptr PermissionRequest
-> IO GValue
forall a. GType -> (GValue -> a -> IO ()) -> a -> IO GValue
B.GValue.buildGValue GType
gtype GValue -> Ptr PermissionRequest -> IO ()
forall a. GObject a => GValue -> Ptr a -> IO ()
B.GValue.set_object)
fromGValue :: GValue -> IO PermissionRequest
fromGValue gv :: GValue
gv = do
Ptr PermissionRequest
ptr <- GValue -> IO (Ptr PermissionRequest)
forall b. GObject b => GValue -> IO (Ptr b)
B.GValue.get_object GValue
gv :: IO (Ptr PermissionRequest)
(ManagedPtr PermissionRequest -> PermissionRequest)
-> Ptr PermissionRequest -> IO PermissionRequest
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr PermissionRequest -> PermissionRequest
PermissionRequest Ptr PermissionRequest
ptr
class (GObject o, O.IsDescendantOf PermissionRequest o) => IsPermissionRequest o
instance (GObject o, O.IsDescendantOf PermissionRequest o) => IsPermissionRequest o
instance O.HasParentTypes PermissionRequest
type instance O.ParentTypes PermissionRequest = '[GObject.Object.Object]
toPermissionRequest :: (MonadIO m, IsPermissionRequest o) => o -> m PermissionRequest
toPermissionRequest :: o -> m PermissionRequest
toPermissionRequest = IO PermissionRequest -> m PermissionRequest
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO PermissionRequest -> m PermissionRequest)
-> (o -> IO PermissionRequest) -> o -> m PermissionRequest
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr PermissionRequest -> PermissionRequest)
-> o -> IO PermissionRequest
forall o o'.
(HasCallStack, GObject o, GObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
unsafeCastTo ManagedPtr PermissionRequest -> PermissionRequest
PermissionRequest
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList PermissionRequest
type instance O.AttributeList PermissionRequest = PermissionRequestAttributeList
type PermissionRequestAttributeList = ('[ ] :: [(Symbol, *)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type family ResolvePermissionRequestMethod (t :: Symbol) (o :: *) :: * where
ResolvePermissionRequestMethod "allow" o = PermissionRequestAllowMethodInfo
ResolvePermissionRequestMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolvePermissionRequestMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolvePermissionRequestMethod "deny" o = PermissionRequestDenyMethodInfo
ResolvePermissionRequestMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolvePermissionRequestMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolvePermissionRequestMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolvePermissionRequestMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolvePermissionRequestMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolvePermissionRequestMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolvePermissionRequestMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolvePermissionRequestMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolvePermissionRequestMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolvePermissionRequestMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolvePermissionRequestMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolvePermissionRequestMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolvePermissionRequestMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolvePermissionRequestMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolvePermissionRequestMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolvePermissionRequestMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolvePermissionRequestMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolvePermissionRequestMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolvePermissionRequestMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolvePermissionRequestMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolvePermissionRequestMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolvePermissionRequestMethod t PermissionRequest, O.MethodInfo info PermissionRequest p) => OL.IsLabel t (PermissionRequest -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#endif
foreign import ccall "webkit_permission_request_allow" webkit_permission_request_allow ::
Ptr PermissionRequest ->
IO ()
permissionRequestAllow ::
(B.CallStack.HasCallStack, MonadIO m, IsPermissionRequest a) =>
a
-> m ()
permissionRequestAllow :: a -> m ()
permissionRequestAllow request :: a
request = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr PermissionRequest
request' <- a -> IO (Ptr PermissionRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr PermissionRequest -> IO ()
webkit_permission_request_allow Ptr PermissionRequest
request'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data PermissionRequestAllowMethodInfo
instance (signature ~ (m ()), MonadIO m, IsPermissionRequest a) => O.MethodInfo PermissionRequestAllowMethodInfo a signature where
overloadedMethod = permissionRequestAllow
#endif
foreign import ccall "webkit_permission_request_deny" webkit_permission_request_deny ::
Ptr PermissionRequest ->
IO ()
permissionRequestDeny ::
(B.CallStack.HasCallStack, MonadIO m, IsPermissionRequest a) =>
a
-> m ()
permissionRequestDeny :: a -> m ()
permissionRequestDeny request :: a
request = IO () -> m ()
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO () -> m ()) -> IO () -> m ()
forall a b. (a -> b) -> a -> b
$ do
Ptr PermissionRequest
request' <- a -> IO (Ptr PermissionRequest)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
request
Ptr PermissionRequest -> IO ()
webkit_permission_request_deny Ptr PermissionRequest
request'
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
request
() -> IO ()
forall (m :: * -> *) a. Monad m => a -> m a
return ()
#if defined(ENABLE_OVERLOADING)
data PermissionRequestDenyMethodInfo
instance (signature ~ (m ()), MonadIO m, IsPermissionRequest a) => O.MethodInfo PermissionRequestDenyMethodInfo a signature where
overloadedMethod = permissionRequestDeny
#endif