module GI.WebKit2WebExtension.Objects.ScriptWorld
(
ScriptWorld(..) ,
IsScriptWorld ,
toScriptWorld ,
noScriptWorld ,
scriptWorldGetDefault ,
scriptWorldNew ,
C_ScriptWorldWindowObjectClearedCallback,
ScriptWorldWindowObjectClearedCallback ,
ScriptWorldWindowObjectClearedSignalInfo,
afterScriptWorldWindowObjectCleared ,
genClosure_ScriptWorldWindowObjectCleared,
mk_ScriptWorldWindowObjectClearedCallback,
noScriptWorldWindowObjectClearedCallback,
onScriptWorldWindowObjectCleared ,
wrap_ScriptWorldWindowObjectClearedCallback,
) 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.GError as B.GError
import qualified Data.GI.Base.GVariant as B.GVariant
import qualified Data.GI.Base.GParamSpec as B.GParamSpec
import qualified Data.GI.Base.CallStack as B.CallStack
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 GI.GObject.Objects.Object as GObject.Object
import qualified GI.WebKit2WebExtension.Objects.Frame as WebKit2WebExtension.Frame
import qualified GI.WebKit2WebExtension.Objects.WebPage as WebKit2WebExtension.WebPage
newtype ScriptWorld = ScriptWorld (ManagedPtr ScriptWorld)
foreign import ccall "webkit_script_world_get_type"
c_webkit_script_world_get_type :: IO GType
instance GObject ScriptWorld where
gobjectType _ = c_webkit_script_world_get_type
class GObject o => IsScriptWorld o
#if MIN_VERSION_base(4,9,0)
instance (GObject a, O.UnknownAncestorError ScriptWorld a) =>
IsScriptWorld a
#endif
instance IsScriptWorld ScriptWorld
instance GObject.Object.IsObject ScriptWorld
toScriptWorld :: IsScriptWorld o => o -> IO ScriptWorld
toScriptWorld = unsafeCastTo ScriptWorld
noScriptWorld :: Maybe ScriptWorld
noScriptWorld = Nothing
type family ResolveScriptWorldMethod (t :: Symbol) (o :: *) :: * 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 "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 "replaceData" o = GObject.Object.ObjectReplaceDataMethodInfo
ResolveScriptWorldMethod "replaceQdata" o = GObject.Object.ObjectReplaceQdataMethodInfo
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 "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveScriptWorldMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveScriptWorldMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveScriptWorldMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveScriptWorldMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveScriptWorldMethod t ScriptWorld, O.MethodInfo info ScriptWorld p) => O.IsLabelProxy t (ScriptWorld -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveScriptWorldMethod t ScriptWorld, O.MethodInfo info ScriptWorld p) => O.IsLabel t (ScriptWorld -> p) where
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif
type ScriptWorldWindowObjectClearedCallback =
WebKit2WebExtension.WebPage.WebPage ->
WebKit2WebExtension.Frame.Frame ->
IO ()
noScriptWorldWindowObjectClearedCallback :: Maybe ScriptWorldWindowObjectClearedCallback
noScriptWorldWindowObjectClearedCallback = Nothing
type C_ScriptWorldWindowObjectClearedCallback =
Ptr () ->
Ptr WebKit2WebExtension.WebPage.WebPage ->
Ptr WebKit2WebExtension.Frame.Frame ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_ScriptWorldWindowObjectClearedCallback :: C_ScriptWorldWindowObjectClearedCallback -> IO (FunPtr C_ScriptWorldWindowObjectClearedCallback)
genClosure_ScriptWorldWindowObjectCleared :: ScriptWorldWindowObjectClearedCallback -> IO Closure
genClosure_ScriptWorldWindowObjectCleared cb = do
let cb' = wrap_ScriptWorldWindowObjectClearedCallback cb
mk_ScriptWorldWindowObjectClearedCallback cb' >>= newCClosure
wrap_ScriptWorldWindowObjectClearedCallback ::
ScriptWorldWindowObjectClearedCallback ->
Ptr () ->
Ptr WebKit2WebExtension.WebPage.WebPage ->
Ptr WebKit2WebExtension.Frame.Frame ->
Ptr () ->
IO ()
wrap_ScriptWorldWindowObjectClearedCallback _cb _ page frame _ = do
page' <- (newObject WebKit2WebExtension.WebPage.WebPage) page
frame' <- (newObject WebKit2WebExtension.Frame.Frame) frame
_cb page' frame'
onScriptWorldWindowObjectCleared :: (IsScriptWorld a, MonadIO m) => a -> ScriptWorldWindowObjectClearedCallback -> m SignalHandlerId
onScriptWorldWindowObjectCleared obj cb = liftIO $ do
let cb' = wrap_ScriptWorldWindowObjectClearedCallback cb
cb'' <- mk_ScriptWorldWindowObjectClearedCallback cb'
connectSignalFunPtr obj "window-object-cleared" cb'' SignalConnectBefore
afterScriptWorldWindowObjectCleared :: (IsScriptWorld a, MonadIO m) => a -> ScriptWorldWindowObjectClearedCallback -> m SignalHandlerId
afterScriptWorldWindowObjectCleared obj cb = liftIO $ do
let cb' = wrap_ScriptWorldWindowObjectClearedCallback cb
cb'' <- mk_ScriptWorldWindowObjectClearedCallback cb'
connectSignalFunPtr obj "window-object-cleared" cb'' SignalConnectAfter
instance O.HasAttributeList ScriptWorld
type instance O.AttributeList ScriptWorld = ScriptWorldAttributeList
type ScriptWorldAttributeList = ('[ ] :: [(Symbol, *)])
data ScriptWorldWindowObjectClearedSignalInfo
instance SignalInfo ScriptWorldWindowObjectClearedSignalInfo where
type HaskellCallbackType ScriptWorldWindowObjectClearedSignalInfo = ScriptWorldWindowObjectClearedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_ScriptWorldWindowObjectClearedCallback cb
cb'' <- mk_ScriptWorldWindowObjectClearedCallback cb'
connectSignalFunPtr obj "window-object-cleared" cb'' connectMode
type instance O.SignalList ScriptWorld = ScriptWorldSignalList
type ScriptWorldSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo), '("windowObjectCleared", ScriptWorldWindowObjectClearedSignalInfo)] :: [(Symbol, *)])
foreign import ccall "webkit_script_world_new" webkit_script_world_new ::
IO (Ptr ScriptWorld)
scriptWorldNew ::
(B.CallStack.HasCallStack, MonadIO m) =>
m ScriptWorld
scriptWorldNew = liftIO $ do
result <- webkit_script_world_new
checkUnexpectedReturnNULL "scriptWorldNew" result
result' <- (wrapObject ScriptWorld) result
return result'
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 = liftIO $ do
result <- webkit_script_world_get_default
checkUnexpectedReturnNULL "scriptWorldGetDefault" result
result' <- (newObject ScriptWorld) result
return result'