{-# LANGUAGE ImplicitParams, RankNTypes, TypeApplications #-}
#if (MIN_VERSION_haskell_gi_overloading(1,0,0) && !defined(__HADDOCK_VERSION__))
#define ENABLE_OVERLOADING
#endif
module GI.WebKit2WebExtension.Objects.ScriptWorld
(
ScriptWorld(..) ,
IsScriptWorld ,
toScriptWorld ,
#if defined(ENABLE_OVERLOADING)
ResolveScriptWorldMethod ,
#endif
scriptWorldGetDefault ,
#if defined(ENABLE_OVERLOADING)
ScriptWorldGetNameMethodInfo ,
#endif
scriptWorldGetName ,
scriptWorldNew ,
scriptWorldNewWithName ,
ScriptWorldWindowObjectClearedCallback ,
#if defined(ENABLE_OVERLOADING)
ScriptWorldWindowObjectClearedSignalInfo,
#endif
afterScriptWorldWindowObjectCleared ,
onScriptWorldWindowObjectCleared ,
) 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.BasicTypes as B.Types
import qualified Data.GI.Base.ManagedPtr as B.ManagedPtr
import qualified Data.GI.Base.GArray as B.GArray
import qualified Data.GI.Base.GClosure as B.GClosure
import qualified Data.GI.Base.GError as B.GError
import qualified Data.GI.Base.GHashTable as B.GHT
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 Control.Monad.IO.Class as MIO
import qualified Data.Coerce as Coerce
import qualified Data.Text as T
import qualified Data.Kind as DK
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 GHC.Records as R
import qualified Data.Word as DW
import qualified Data.Int as DI
import qualified System.Posix.Types as SPT
import qualified Foreign.C.Types as FCT
#if MIN_VERSION_base(4,18,0)
import qualified GI.GObject.Objects.Object as GObject.Object
import qualified GI.Gdk.Unions.Event as Gdk.Event
import qualified GI.Gio.Callbacks as Gio.Callbacks
import qualified GI.Gio.Interfaces.Action as Gio.Action
import qualified GI.Gio.Interfaces.AsyncResult as Gio.AsyncResult
import qualified GI.Gio.Objects.Cancellable as Gio.Cancellable
import qualified GI.Gio.Objects.UnixFDList as Gio.UnixFDList
import qualified GI.Gtk.Objects.Action as Gtk.Action
import qualified GI.JavaScriptCore.Objects.Context as JavaScriptCore.Context
import qualified GI.JavaScriptCore.Objects.Value as JavaScriptCore.Value
import qualified GI.Soup.Structs.MessageHeaders as Soup.MessageHeaders
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Enums as WebKit2WebExtension.Enums
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Interfaces.DOMEventTarget as WebKit2WebExtension.DOMEventTarget
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Interfaces.DOMNodeFilter as WebKit2WebExtension.DOMNodeFilter
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Interfaces.DOMXPathNSResolver as WebKit2WebExtension.DOMXPathNSResolver
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.ContextMenu as WebKit2WebExtension.ContextMenu
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.ContextMenuItem as WebKit2WebExtension.ContextMenuItem
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMAttr as WebKit2WebExtension.DOMAttr
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCDATASection as WebKit2WebExtension.DOMCDATASection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCSSRule as WebKit2WebExtension.DOMCSSRule
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCSSRuleList as WebKit2WebExtension.DOMCSSRuleList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCSSStyleDeclaration as WebKit2WebExtension.DOMCSSStyleDeclaration
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCSSStyleSheet as WebKit2WebExtension.DOMCSSStyleSheet
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMCharacterData as WebKit2WebExtension.DOMCharacterData
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMClientRect as WebKit2WebExtension.DOMClientRect
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMClientRectList as WebKit2WebExtension.DOMClientRectList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMComment as WebKit2WebExtension.DOMComment
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDOMImplementation as WebKit2WebExtension.DOMDOMImplementation
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDOMSelection as WebKit2WebExtension.DOMDOMSelection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDOMTokenList as WebKit2WebExtension.DOMDOMTokenList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDOMWindow as WebKit2WebExtension.DOMDOMWindow
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDocument as WebKit2WebExtension.DOMDocument
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDocumentFragment as WebKit2WebExtension.DOMDocumentFragment
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMDocumentType as WebKit2WebExtension.DOMDocumentType
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMElement as WebKit2WebExtension.DOMElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMEntityReference as WebKit2WebExtension.DOMEntityReference
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMEvent as WebKit2WebExtension.DOMEvent
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLCollection as WebKit2WebExtension.DOMHTMLCollection
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLDocument as WebKit2WebExtension.DOMHTMLDocument
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLElement as WebKit2WebExtension.DOMHTMLElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLHeadElement as WebKit2WebExtension.DOMHTMLHeadElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMHTMLScriptElement as WebKit2WebExtension.DOMHTMLScriptElement
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMMediaList as WebKit2WebExtension.DOMMediaList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNamedNodeMap as WebKit2WebExtension.DOMNamedNodeMap
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNode as WebKit2WebExtension.DOMNode
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNodeIterator as WebKit2WebExtension.DOMNodeIterator
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMNodeList as WebKit2WebExtension.DOMNodeList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMObject as WebKit2WebExtension.DOMObject
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMProcessingInstruction as WebKit2WebExtension.DOMProcessingInstruction
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMRange as WebKit2WebExtension.DOMRange
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMStyleSheet as WebKit2WebExtension.DOMStyleSheet
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMStyleSheetList as WebKit2WebExtension.DOMStyleSheetList
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMText as WebKit2WebExtension.DOMText
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMTreeWalker as WebKit2WebExtension.DOMTreeWalker
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMXPathExpression as WebKit2WebExtension.DOMXPathExpression
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.DOMXPathResult as WebKit2WebExtension.DOMXPathResult
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.Frame as WebKit2WebExtension.Frame
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.HitTestResult as WebKit2WebExtension.HitTestResult
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.URIRequest as WebKit2WebExtension.URIRequest
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.URIResponse as WebKit2WebExtension.URIResponse
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.UserMessage as WebKit2WebExtension.UserMessage
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.WebEditor as WebKit2WebExtension.WebEditor
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.WebFormManager as WebKit2WebExtension.WebFormManager
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.WebHitTestResult as WebKit2WebExtension.WebHitTestResult
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.WebPage as WebKit2WebExtension.WebPage
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Structs.ConsoleMessage as WebKit2WebExtension.ConsoleMessage
#else
import qualified GI.GObject.Objects.Object as GObject.Object
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.Frame as WebKit2WebExtension.Frame
import {-# SOURCE #-} qualified GI.WebKit2WebExtension.Objects.WebPage as WebKit2WebExtension.WebPage
#endif
newtype ScriptWorld = ScriptWorld (SP.ManagedPtr ScriptWorld)
deriving (ScriptWorld -> ScriptWorld -> Bool
(ScriptWorld -> ScriptWorld -> Bool)
-> (ScriptWorld -> ScriptWorld -> Bool) -> Eq ScriptWorld
forall a. (a -> a -> Bool) -> (a -> a -> Bool) -> Eq a
$c== :: ScriptWorld -> ScriptWorld -> Bool
== :: ScriptWorld -> ScriptWorld -> Bool
$c/= :: ScriptWorld -> ScriptWorld -> Bool
/= :: ScriptWorld -> ScriptWorld -> Bool
Eq)
instance SP.ManagedPtrNewtype ScriptWorld where
toManagedPtr :: ScriptWorld -> ManagedPtr ScriptWorld
toManagedPtr (ScriptWorld ManagedPtr ScriptWorld
p) = ManagedPtr ScriptWorld
p
foreign import ccall "webkit_script_world_get_type"
c_webkit_script_world_get_type :: IO B.Types.GType
instance B.Types.TypedObject ScriptWorld where
glibType :: IO GType
glibType = IO GType
c_webkit_script_world_get_type
instance B.Types.GObject ScriptWorld
class (SP.GObject o, O.IsDescendantOf ScriptWorld o) => IsScriptWorld o
instance (SP.GObject o, O.IsDescendantOf ScriptWorld o) => IsScriptWorld o
instance O.HasParentTypes ScriptWorld
type instance O.ParentTypes ScriptWorld = '[GObject.Object.Object]
toScriptWorld :: (MIO.MonadIO m, IsScriptWorld o) => o -> m ScriptWorld
toScriptWorld :: forall (m :: * -> *) o.
(MonadIO m, IsScriptWorld o) =>
o -> m ScriptWorld
toScriptWorld = IO ScriptWorld -> m ScriptWorld
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
MIO.liftIO (IO ScriptWorld -> m ScriptWorld)
-> (o -> IO ScriptWorld) -> o -> m ScriptWorld
forall b c a. (b -> c) -> (a -> b) -> a -> c
. (ManagedPtr ScriptWorld -> ScriptWorld) -> o -> IO ScriptWorld
forall o o'.
(HasCallStack, ManagedPtrNewtype o, TypedObject o,
ManagedPtrNewtype o', TypedObject o') =>
(ManagedPtr o' -> o') -> o -> IO o'
B.ManagedPtr.unsafeCastTo ManagedPtr ScriptWorld -> ScriptWorld
ScriptWorld
instance B.GValue.IsGValue (Maybe ScriptWorld) where
gvalueGType_ :: IO GType
gvalueGType_ = IO GType
c_webkit_script_world_get_type
gvalueSet_ :: Ptr GValue -> Maybe ScriptWorld -> IO ()
gvalueSet_ Ptr GValue
gv Maybe ScriptWorld
P.Nothing = Ptr GValue -> Ptr ScriptWorld -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv (Ptr ScriptWorld
forall a. Ptr a
FP.nullPtr :: FP.Ptr ScriptWorld)
gvalueSet_ Ptr GValue
gv (P.Just ScriptWorld
obj) = ScriptWorld -> (Ptr ScriptWorld -> IO ()) -> IO ()
forall a c.
(HasCallStack, ManagedPtrNewtype a) =>
a -> (Ptr a -> IO c) -> IO c
B.ManagedPtr.withManagedPtr ScriptWorld
obj (Ptr GValue -> Ptr ScriptWorld -> IO ()
forall a. GObject a => Ptr GValue -> Ptr a -> IO ()
B.GValue.set_object Ptr GValue
gv)
gvalueGet_ :: Ptr GValue -> IO (Maybe ScriptWorld)
gvalueGet_ Ptr GValue
gv = do
Ptr ScriptWorld
ptr <- Ptr GValue -> IO (Ptr ScriptWorld)
forall a. GObject a => Ptr GValue -> IO (Ptr a)
B.GValue.get_object Ptr GValue
gv :: IO (FP.Ptr ScriptWorld)
if Ptr ScriptWorld
ptr Ptr ScriptWorld -> Ptr ScriptWorld -> Bool
forall a. Eq a => a -> a -> Bool
/= Ptr ScriptWorld
forall a. Ptr a
FP.nullPtr
then ScriptWorld -> Maybe ScriptWorld
forall a. a -> Maybe a
P.Just (ScriptWorld -> Maybe ScriptWorld)
-> IO ScriptWorld -> IO (Maybe ScriptWorld)
forall (f :: * -> *) a b. Functor f => (a -> b) -> f a -> f b
<$> (ManagedPtr ScriptWorld -> ScriptWorld)
-> Ptr ScriptWorld -> IO ScriptWorld
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
B.ManagedPtr.newObject ManagedPtr ScriptWorld -> ScriptWorld
ScriptWorld Ptr ScriptWorld
ptr
else Maybe ScriptWorld -> IO (Maybe ScriptWorld)
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Maybe ScriptWorld
forall a. Maybe a
P.Nothing
#if defined(ENABLE_OVERLOADING)
type family ResolveScriptWorldMethod (t :: Symbol) (o :: DK.Type) :: DK.Type where
ResolveScriptWorldMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveScriptWorldMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveScriptWorldMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveScriptWorldMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveScriptWorldMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveScriptWorldMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveScriptWorldMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveScriptWorldMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveScriptWorldMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveScriptWorldMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveScriptWorldMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveScriptWorldMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveScriptWorldMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveScriptWorldMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveScriptWorldMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveScriptWorldMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveScriptWorldMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveScriptWorldMethod "getName" o = ScriptWorldGetNameMethodInfo
ResolveScriptWorldMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveScriptWorldMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveScriptWorldMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveScriptWorldMethod "setDataFull" o = GObject.Object.ObjectSetDataFullMethodInfo
ResolveScriptWorldMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveScriptWorldMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveScriptWorldMethod t ScriptWorld, O.OverloadedMethod info ScriptWorld p) => OL.IsLabel t (ScriptWorld -> p) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.overloadedMethod @info
#else
fromLabel _ = O.overloadedMethod @info
#endif
#if MIN_VERSION_base(4,13,0)
instance (info ~ ResolveScriptWorldMethod t ScriptWorld, O.OverloadedMethod info ScriptWorld p, R.HasField t ScriptWorld p) => R.HasField t ScriptWorld p where
getField = O.overloadedMethod @info
#endif
instance (info ~ ResolveScriptWorldMethod t ScriptWorld, O.OverloadedMethodInfo info ScriptWorld) => OL.IsLabel t (O.MethodProxy info ScriptWorld) where
#if MIN_VERSION_base(4,10,0)
fromLabel = O.MethodProxy
#else
fromLabel _ = O.MethodProxy
#endif
#endif
type ScriptWorldWindowObjectClearedCallback =
WebKit2WebExtension.WebPage.WebPage
-> WebKit2WebExtension.Frame.Frame
-> IO ()
type C_ScriptWorldWindowObjectClearedCallback =
Ptr ScriptWorld ->
Ptr WebKit2WebExtension.WebPage.WebPage ->
Ptr WebKit2WebExtension.Frame.Frame ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ScriptWorldWindowObjectClearedCallback :: C_ScriptWorldWindowObjectClearedCallback -> IO (FunPtr C_ScriptWorldWindowObjectClearedCallback)
wrap_ScriptWorldWindowObjectClearedCallback ::
GObject a => (a -> ScriptWorldWindowObjectClearedCallback) ->
C_ScriptWorldWindowObjectClearedCallback
wrap_ScriptWorldWindowObjectClearedCallback :: forall a.
GObject a =>
(a -> ScriptWorldWindowObjectClearedCallback)
-> C_ScriptWorldWindowObjectClearedCallback
wrap_ScriptWorldWindowObjectClearedCallback a -> ScriptWorldWindowObjectClearedCallback
gi'cb Ptr ScriptWorld
gi'selfPtr Ptr WebPage
page Ptr Frame
frame Ptr ()
_ = do
WebPage
page' <- ((ManagedPtr WebPage -> WebPage) -> Ptr WebPage -> IO WebPage
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr WebPage -> WebPage
WebKit2WebExtension.WebPage.WebPage) Ptr WebPage
page
Frame
frame' <- ((ManagedPtr Frame -> Frame) -> Ptr Frame -> IO Frame
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr Frame -> Frame
WebKit2WebExtension.Frame.Frame) Ptr Frame
frame
Ptr ScriptWorld -> (ScriptWorld -> IO ()) -> IO ()
forall o b.
(HasCallStack, GObject o) =>
Ptr o -> (o -> IO b) -> IO b
B.ManagedPtr.withNewObject Ptr ScriptWorld
gi'selfPtr ((ScriptWorld -> IO ()) -> IO ())
-> (ScriptWorld -> IO ()) -> IO ()
forall a b. (a -> b) -> a -> b
$ \ScriptWorld
gi'self -> a -> ScriptWorldWindowObjectClearedCallback
gi'cb (ScriptWorld -> a
forall a b. Coercible a b => a -> b
Coerce.coerce ScriptWorld
gi'self) WebPage
page' Frame
frame'
onScriptWorldWindowObjectCleared :: (IsScriptWorld a, MonadIO m) => a -> ((?self :: a) => ScriptWorldWindowObjectClearedCallback) -> m SignalHandlerId
onScriptWorldWindowObjectCleared :: forall a (m :: * -> *).
(IsScriptWorld a, MonadIO m) =>
a
-> ((?self::a) => ScriptWorldWindowObjectClearedCallback)
-> m SignalHandlerId
onScriptWorldWindowObjectCleared a
obj (?self::a) => ScriptWorldWindowObjectClearedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> ScriptWorldWindowObjectClearedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => ScriptWorldWindowObjectClearedCallback
ScriptWorldWindowObjectClearedCallback
cb
let wrapped' :: C_ScriptWorldWindowObjectClearedCallback
wrapped' = (a -> ScriptWorldWindowObjectClearedCallback)
-> C_ScriptWorldWindowObjectClearedCallback
forall a.
GObject a =>
(a -> ScriptWorldWindowObjectClearedCallback)
-> C_ScriptWorldWindowObjectClearedCallback
wrap_ScriptWorldWindowObjectClearedCallback a -> ScriptWorldWindowObjectClearedCallback
wrapped
FunPtr C_ScriptWorldWindowObjectClearedCallback
wrapped'' <- C_ScriptWorldWindowObjectClearedCallback
-> IO (FunPtr C_ScriptWorldWindowObjectClearedCallback)
mk_ScriptWorldWindowObjectClearedCallback C_ScriptWorldWindowObjectClearedCallback
wrapped'
a
-> Text
-> FunPtr C_ScriptWorldWindowObjectClearedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"window-object-cleared" FunPtr C_ScriptWorldWindowObjectClearedCallback
wrapped'' SignalConnectMode
SignalConnectBefore Maybe Text
forall a. Maybe a
Nothing
afterScriptWorldWindowObjectCleared :: (IsScriptWorld a, MonadIO m) => a -> ((?self :: a) => ScriptWorldWindowObjectClearedCallback) -> m SignalHandlerId
afterScriptWorldWindowObjectCleared :: forall a (m :: * -> *).
(IsScriptWorld a, MonadIO m) =>
a
-> ((?self::a) => ScriptWorldWindowObjectClearedCallback)
-> m SignalHandlerId
afterScriptWorldWindowObjectCleared a
obj (?self::a) => ScriptWorldWindowObjectClearedCallback
cb = IO SignalHandlerId -> m SignalHandlerId
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO SignalHandlerId -> m SignalHandlerId)
-> IO SignalHandlerId -> m SignalHandlerId
forall a b. (a -> b) -> a -> b
$ do
let wrapped :: a -> ScriptWorldWindowObjectClearedCallback
wrapped a
self = let ?self = a
?self::a
self in (?self::a) => ScriptWorldWindowObjectClearedCallback
ScriptWorldWindowObjectClearedCallback
cb
let wrapped' :: C_ScriptWorldWindowObjectClearedCallback
wrapped' = (a -> ScriptWorldWindowObjectClearedCallback)
-> C_ScriptWorldWindowObjectClearedCallback
forall a.
GObject a =>
(a -> ScriptWorldWindowObjectClearedCallback)
-> C_ScriptWorldWindowObjectClearedCallback
wrap_ScriptWorldWindowObjectClearedCallback a -> ScriptWorldWindowObjectClearedCallback
wrapped
FunPtr C_ScriptWorldWindowObjectClearedCallback
wrapped'' <- C_ScriptWorldWindowObjectClearedCallback
-> IO (FunPtr C_ScriptWorldWindowObjectClearedCallback)
mk_ScriptWorldWindowObjectClearedCallback C_ScriptWorldWindowObjectClearedCallback
wrapped'
a
-> Text
-> FunPtr C_ScriptWorldWindowObjectClearedCallback
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
forall o a.
GObject o =>
o
-> Text
-> FunPtr a
-> SignalConnectMode
-> Maybe Text
-> IO SignalHandlerId
connectSignalFunPtr a
obj Text
"window-object-cleared" FunPtr C_ScriptWorldWindowObjectClearedCallback
wrapped'' SignalConnectMode
SignalConnectAfter Maybe Text
forall a. Maybe a
Nothing
#if defined(ENABLE_OVERLOADING)
data ScriptWorldWindowObjectClearedSignalInfo
instance SignalInfo ScriptWorldWindowObjectClearedSignalInfo where
type HaskellCallbackType ScriptWorldWindowObjectClearedSignalInfo = ScriptWorldWindowObjectClearedCallback
connectSignal obj cb connectMode detail = do
let cb' = wrap_ScriptWorldWindowObjectClearedCallback cb
cb'' <- mk_ScriptWorldWindowObjectClearedCallback cb'
connectSignalFunPtr obj "window-object-cleared" cb'' connectMode detail
dbgSignalInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.WebKit2WebExtension.Objects.ScriptWorld::window-object-cleared"
, O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-webkit2webextension-4.0.31/docs/GI-WebKit2WebExtension-Objects-ScriptWorld.html#g:signal:windowObjectCleared"})
#endif
#if defined(ENABLE_OVERLOADING)
instance O.HasAttributeList ScriptWorld
type instance O.AttributeList ScriptWorld = ScriptWorldAttributeList
type ScriptWorldAttributeList = ('[ ] :: [(Symbol, DK.Type)])
#endif
#if defined(ENABLE_OVERLOADING)
#endif
#if defined(ENABLE_OVERLOADING)
type instance O.SignalList ScriptWorld = ScriptWorldSignalList
type ScriptWorldSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo), '("windowObjectCleared", ScriptWorldWindowObjectClearedSignalInfo)] :: [(Symbol, DK.Type)])
#endif
foreign import ccall "webkit_script_world_new" webkit_script_world_new ::
IO (Ptr ScriptWorld)
scriptWorldNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
m ScriptWorld
scriptWorldNew :: forall (m :: * -> *). (HasCallStack, MonadIO m) => m ScriptWorld
scriptWorldNew = IO ScriptWorld -> m ScriptWorld
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ScriptWorld -> m ScriptWorld)
-> IO ScriptWorld -> m ScriptWorld
forall a b. (a -> b) -> a -> b
$ do
Ptr ScriptWorld
result <- IO (Ptr ScriptWorld)
webkit_script_world_new
Text -> Ptr ScriptWorld -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"scriptWorldNew" Ptr ScriptWorld
result
ScriptWorld
result' <- ((ManagedPtr ScriptWorld -> ScriptWorld)
-> Ptr ScriptWorld -> IO ScriptWorld
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr ScriptWorld -> ScriptWorld
ScriptWorld) Ptr ScriptWorld
result
ScriptWorld -> IO ScriptWorld
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ScriptWorld
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "webkit_script_world_new_with_name" webkit_script_world_new_with_name ::
CString ->
IO (Ptr ScriptWorld)
scriptWorldNewWithName ::
(B.CallStack.HasCallStack, MonadIO m) =>
T.Text
-> m ScriptWorld
scriptWorldNewWithName :: forall (m :: * -> *).
(HasCallStack, MonadIO m) =>
Text -> m ScriptWorld
scriptWorldNewWithName Text
name = IO ScriptWorld -> m ScriptWorld
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ScriptWorld -> m ScriptWorld)
-> IO ScriptWorld -> m ScriptWorld
forall a b. (a -> b) -> a -> b
$ do
CString
name' <- Text -> IO CString
textToCString Text
name
Ptr ScriptWorld
result <- CString -> IO (Ptr ScriptWorld)
webkit_script_world_new_with_name CString
name'
Text -> Ptr ScriptWorld -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"scriptWorldNewWithName" Ptr ScriptWorld
result
ScriptWorld
result' <- ((ManagedPtr ScriptWorld -> ScriptWorld)
-> Ptr ScriptWorld -> IO ScriptWorld
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
wrapObject ManagedPtr ScriptWorld -> ScriptWorld
ScriptWorld) Ptr ScriptWorld
result
CString -> IO ()
forall a. Ptr a -> IO ()
freeMem CString
name'
ScriptWorld -> IO ScriptWorld
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ScriptWorld
result'
#if defined(ENABLE_OVERLOADING)
#endif
foreign import ccall "webkit_script_world_get_name" webkit_script_world_get_name ::
Ptr ScriptWorld ->
IO CString
scriptWorldGetName ::
(B.CallStack.HasCallStack, MonadIO m, IsScriptWorld a) =>
a
-> m T.Text
scriptWorldGetName :: forall (m :: * -> *) a.
(HasCallStack, MonadIO m, IsScriptWorld a) =>
a -> m Text
scriptWorldGetName a
world = IO Text -> m Text
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO Text -> m Text) -> IO Text -> m Text
forall a b. (a -> b) -> a -> b
$ do
Ptr ScriptWorld
world' <- a -> IO (Ptr ScriptWorld)
forall a b. (HasCallStack, ManagedPtrNewtype a) => a -> IO (Ptr b)
unsafeManagedPtrCastPtr a
world
CString
result <- Ptr ScriptWorld -> IO CString
webkit_script_world_get_name Ptr ScriptWorld
world'
Text -> CString -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"scriptWorldGetName" CString
result
Text
result' <- HasCallStack => CString -> IO Text
CString -> IO Text
cstringToText CString
result
a -> IO ()
forall a. ManagedPtrNewtype a => a -> IO ()
touchManagedPtr a
world
Text -> IO Text
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return Text
result'
#if defined(ENABLE_OVERLOADING)
data ScriptWorldGetNameMethodInfo
instance (signature ~ (m T.Text), MonadIO m, IsScriptWorld a) => O.OverloadedMethod ScriptWorldGetNameMethodInfo a signature where
overloadedMethod = scriptWorldGetName
instance O.OverloadedMethodInfo ScriptWorldGetNameMethodInfo a where
overloadedMethodInfo = P.Just (O.ResolvedSymbolInfo {
O.resolvedSymbolName = "GI.WebKit2WebExtension.Objects.ScriptWorld.scriptWorldGetName",
O.resolvedSymbolURL = "https://hackage.haskell.org/package/gi-webkit2webextension-4.0.31/docs/GI-WebKit2WebExtension-Objects-ScriptWorld.html#v:scriptWorldGetName"
})
#endif
foreign import ccall "webkit_script_world_get_default" webkit_script_world_get_default ::
IO (Ptr ScriptWorld)
scriptWorldGetDefault ::
(B.CallStack.HasCallStack, MonadIO m) =>
m ScriptWorld
scriptWorldGetDefault :: forall (m :: * -> *). (HasCallStack, MonadIO m) => m ScriptWorld
scriptWorldGetDefault = IO ScriptWorld -> m ScriptWorld
forall a. IO a -> m a
forall (m :: * -> *) a. MonadIO m => IO a -> m a
liftIO (IO ScriptWorld -> m ScriptWorld)
-> IO ScriptWorld -> m ScriptWorld
forall a b. (a -> b) -> a -> b
$ do
Ptr ScriptWorld
result <- IO (Ptr ScriptWorld)
webkit_script_world_get_default
Text -> Ptr ScriptWorld -> IO ()
forall a. HasCallStack => Text -> Ptr a -> IO ()
checkUnexpectedReturnNULL Text
"scriptWorldGetDefault" Ptr ScriptWorld
result
ScriptWorld
result' <- ((ManagedPtr ScriptWorld -> ScriptWorld)
-> Ptr ScriptWorld -> IO ScriptWorld
forall a b.
(HasCallStack, GObject a, GObject b) =>
(ManagedPtr a -> a) -> Ptr b -> IO a
newObject ManagedPtr ScriptWorld -> ScriptWorld
ScriptWorld) Ptr ScriptWorld
result
ScriptWorld -> IO ScriptWorld
forall a. a -> IO a
forall (m :: * -> *) a. Monad m => a -> m a
return ScriptWorld
result'
#if defined(ENABLE_OVERLOADING)
#endif