{- | Copyright : Will Thompson, Iñaki García Etxebarria and Jonas Platte License : LGPL-2.1 Maintainer : Iñaki García Etxebarria (inaki@blueleaf.cc) /No description available in the introspection data./ -} #define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \ && !defined(__HADDOCK_VERSION__)) module GI.WebKit2.Objects.UserContentManager ( -- * Exported types UserContentManager(..) , IsUserContentManager , toUserContentManager , noUserContentManager , -- * Methods -- ** addFilter #method:addFilter# #if ENABLE_OVERLOADING UserContentManagerAddFilterMethodInfo , #endif userContentManagerAddFilter , -- ** addScript #method:addScript# #if ENABLE_OVERLOADING UserContentManagerAddScriptMethodInfo , #endif userContentManagerAddScript , -- ** addStyleSheet #method:addStyleSheet# #if ENABLE_OVERLOADING UserContentManagerAddStyleSheetMethodInfo, #endif userContentManagerAddStyleSheet , -- ** new #method:new# userContentManagerNew , -- ** registerScriptMessageHandler #method:registerScriptMessageHandler# #if ENABLE_OVERLOADING UserContentManagerRegisterScriptMessageHandlerMethodInfo, #endif userContentManagerRegisterScriptMessageHandler, -- ** registerScriptMessageHandlerInWorld #method:registerScriptMessageHandlerInWorld# #if ENABLE_OVERLOADING UserContentManagerRegisterScriptMessageHandlerInWorldMethodInfo, #endif userContentManagerRegisterScriptMessageHandlerInWorld, -- ** removeAllFilters #method:removeAllFilters# #if ENABLE_OVERLOADING UserContentManagerRemoveAllFiltersMethodInfo, #endif userContentManagerRemoveAllFilters , -- ** removeAllScripts #method:removeAllScripts# #if ENABLE_OVERLOADING UserContentManagerRemoveAllScriptsMethodInfo, #endif userContentManagerRemoveAllScripts , -- ** removeAllStyleSheets #method:removeAllStyleSheets# #if ENABLE_OVERLOADING UserContentManagerRemoveAllStyleSheetsMethodInfo, #endif userContentManagerRemoveAllStyleSheets , -- ** removeFilter #method:removeFilter# #if ENABLE_OVERLOADING UserContentManagerRemoveFilterMethodInfo, #endif userContentManagerRemoveFilter , -- ** unregisterScriptMessageHandler #method:unregisterScriptMessageHandler# #if ENABLE_OVERLOADING UserContentManagerUnregisterScriptMessageHandlerMethodInfo, #endif userContentManagerUnregisterScriptMessageHandler, -- ** unregisterScriptMessageHandlerInWorld #method:unregisterScriptMessageHandlerInWorld# #if ENABLE_OVERLOADING UserContentManagerUnregisterScriptMessageHandlerInWorldMethodInfo, #endif userContentManagerUnregisterScriptMessageHandlerInWorld, -- * Signals -- ** scriptMessageReceived #signal:scriptMessageReceived# C_UserContentManagerScriptMessageReceivedCallback, UserContentManagerScriptMessageReceivedCallback, #if ENABLE_OVERLOADING UserContentManagerScriptMessageReceivedSignalInfo, #endif afterUserContentManagerScriptMessageReceived, genClosure_UserContentManagerScriptMessageReceived, mk_UserContentManagerScriptMessageReceivedCallback, noUserContentManagerScriptMessageReceivedCallback, onUserContentManagerScriptMessageReceived, wrap_UserContentManagerScriptMessageReceivedCallback, ) 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.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 import {-# SOURCE #-} qualified GI.WebKit2.Structs.JavascriptResult as WebKit2.JavascriptResult import {-# SOURCE #-} qualified GI.WebKit2.Structs.UserContentFilter as WebKit2.UserContentFilter import {-# SOURCE #-} qualified GI.WebKit2.Structs.UserScript as WebKit2.UserScript import {-# SOURCE #-} qualified GI.WebKit2.Structs.UserStyleSheet as WebKit2.UserStyleSheet -- | Memory-managed wrapper type. newtype UserContentManager = UserContentManager (ManagedPtr UserContentManager) foreign import ccall "webkit_user_content_manager_get_type" c_webkit_user_content_manager_get_type :: IO GType instance GObject UserContentManager where gobjectType = c_webkit_user_content_manager_get_type -- | Type class for types which can be safely cast to `UserContentManager`, for instance with `toUserContentManager`. class (GObject o, O.IsDescendantOf UserContentManager o) => IsUserContentManager o instance (GObject o, O.IsDescendantOf UserContentManager o) => IsUserContentManager o instance O.HasParentTypes UserContentManager type instance O.ParentTypes UserContentManager = '[GObject.Object.Object] -- | Cast to `UserContentManager`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`. toUserContentManager :: (MonadIO m, IsUserContentManager o) => o -> m UserContentManager toUserContentManager = liftIO . unsafeCastTo UserContentManager -- | A convenience alias for `Nothing` :: `Maybe` `UserContentManager`. noUserContentManager :: Maybe UserContentManager noUserContentManager = Nothing #if ENABLE_OVERLOADING type family ResolveUserContentManagerMethod (t :: Symbol) (o :: *) :: * where ResolveUserContentManagerMethod "addFilter" o = UserContentManagerAddFilterMethodInfo ResolveUserContentManagerMethod "addScript" o = UserContentManagerAddScriptMethodInfo ResolveUserContentManagerMethod "addStyleSheet" o = UserContentManagerAddStyleSheetMethodInfo ResolveUserContentManagerMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo ResolveUserContentManagerMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo ResolveUserContentManagerMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo ResolveUserContentManagerMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo ResolveUserContentManagerMethod "getv" o = GObject.Object.ObjectGetvMethodInfo ResolveUserContentManagerMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo ResolveUserContentManagerMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo ResolveUserContentManagerMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo ResolveUserContentManagerMethod "ref" o = GObject.Object.ObjectRefMethodInfo ResolveUserContentManagerMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo ResolveUserContentManagerMethod "registerScriptMessageHandler" o = UserContentManagerRegisterScriptMessageHandlerMethodInfo ResolveUserContentManagerMethod "registerScriptMessageHandlerInWorld" o = UserContentManagerRegisterScriptMessageHandlerInWorldMethodInfo ResolveUserContentManagerMethod "removeAllFilters" o = UserContentManagerRemoveAllFiltersMethodInfo ResolveUserContentManagerMethod "removeAllScripts" o = UserContentManagerRemoveAllScriptsMethodInfo ResolveUserContentManagerMethod "removeAllStyleSheets" o = UserContentManagerRemoveAllStyleSheetsMethodInfo ResolveUserContentManagerMethod "removeFilter" o = UserContentManagerRemoveFilterMethodInfo ResolveUserContentManagerMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo ResolveUserContentManagerMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo ResolveUserContentManagerMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo ResolveUserContentManagerMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo ResolveUserContentManagerMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo ResolveUserContentManagerMethod "unregisterScriptMessageHandler" o = UserContentManagerUnregisterScriptMessageHandlerMethodInfo ResolveUserContentManagerMethod "unregisterScriptMessageHandlerInWorld" o = UserContentManagerUnregisterScriptMessageHandlerInWorldMethodInfo ResolveUserContentManagerMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo ResolveUserContentManagerMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo ResolveUserContentManagerMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo ResolveUserContentManagerMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo ResolveUserContentManagerMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo ResolveUserContentManagerMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo ResolveUserContentManagerMethod l o = O.MethodResolutionFailed l o instance (info ~ ResolveUserContentManagerMethod t UserContentManager, O.MethodInfo info UserContentManager p) => OL.IsLabel t (UserContentManager -> p) where #if MIN_VERSION_base(4,10,0) fromLabel = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info) #else fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info) #endif #endif -- signal UserContentManager::script-message-received {- | This signal is emitted when JavaScript in a web view calls \window.webkit.messageHandlers.<name>.@/postMessage()/@\<\/code>, after registering \<name>\<\/code> using 'GI.WebKit2.Objects.UserContentManager.userContentManagerRegisterScriptMessageHandler' /Since: 2.8/ -} type UserContentManagerScriptMessageReceivedCallback = WebKit2.JavascriptResult.JavascriptResult {- ^ /@jsResult@/: the 'GI.WebKit2.Structs.JavascriptResult.JavascriptResult' holding the value received from the JavaScript world. -} -> IO () -- | A convenience synonym for @`Nothing` :: `Maybe` `UserContentManagerScriptMessageReceivedCallback`@. noUserContentManagerScriptMessageReceivedCallback :: Maybe UserContentManagerScriptMessageReceivedCallback noUserContentManagerScriptMessageReceivedCallback = Nothing -- | Type for the callback on the (unwrapped) C side. type C_UserContentManagerScriptMessageReceivedCallback = Ptr () -> -- object Ptr WebKit2.JavascriptResult.JavascriptResult -> Ptr () -> -- user_data IO () -- | Generate a function pointer callable from C code, from a `C_UserContentManagerScriptMessageReceivedCallback`. foreign import ccall "wrapper" mk_UserContentManagerScriptMessageReceivedCallback :: C_UserContentManagerScriptMessageReceivedCallback -> IO (FunPtr C_UserContentManagerScriptMessageReceivedCallback) -- | Wrap the callback into a `GClosure`. genClosure_UserContentManagerScriptMessageReceived :: MonadIO m => UserContentManagerScriptMessageReceivedCallback -> m (GClosure C_UserContentManagerScriptMessageReceivedCallback) genClosure_UserContentManagerScriptMessageReceived cb = liftIO $ do let cb' = wrap_UserContentManagerScriptMessageReceivedCallback cb mk_UserContentManagerScriptMessageReceivedCallback cb' >>= B.GClosure.newGClosure -- | Wrap a `UserContentManagerScriptMessageReceivedCallback` into a `C_UserContentManagerScriptMessageReceivedCallback`. wrap_UserContentManagerScriptMessageReceivedCallback :: UserContentManagerScriptMessageReceivedCallback -> C_UserContentManagerScriptMessageReceivedCallback wrap_UserContentManagerScriptMessageReceivedCallback _cb _ jsResult _ = do B.ManagedPtr.withTransient WebKit2.JavascriptResult.JavascriptResult jsResult $ \jsResult' -> do _cb jsResult' {- | Connect a signal handler for the “@script-message-received@” signal, to be run before the default handler. When is enabled, this is equivalent to @ 'Data.GI.Base.Signals.on' userContentManager #scriptMessageReceived callback @ -} onUserContentManagerScriptMessageReceived :: (IsUserContentManager a, MonadIO m) => a -> UserContentManagerScriptMessageReceivedCallback -> m SignalHandlerId onUserContentManagerScriptMessageReceived obj cb = liftIO $ do let cb' = wrap_UserContentManagerScriptMessageReceivedCallback cb cb'' <- mk_UserContentManagerScriptMessageReceivedCallback cb' connectSignalFunPtr obj "script-message-received" cb'' SignalConnectBefore {- | Connect a signal handler for the “@script-message-received@” signal, to be run after the default handler. When is enabled, this is equivalent to @ 'Data.GI.Base.Signals.after' userContentManager #scriptMessageReceived callback @ -} afterUserContentManagerScriptMessageReceived :: (IsUserContentManager a, MonadIO m) => a -> UserContentManagerScriptMessageReceivedCallback -> m SignalHandlerId afterUserContentManagerScriptMessageReceived obj cb = liftIO $ do let cb' = wrap_UserContentManagerScriptMessageReceivedCallback cb cb'' <- mk_UserContentManagerScriptMessageReceivedCallback cb' connectSignalFunPtr obj "script-message-received" cb'' SignalConnectAfter #if ENABLE_OVERLOADING instance O.HasAttributeList UserContentManager type instance O.AttributeList UserContentManager = UserContentManagerAttributeList type UserContentManagerAttributeList = ('[ ] :: [(Symbol, *)]) #endif #if ENABLE_OVERLOADING #endif #if ENABLE_OVERLOADING data UserContentManagerScriptMessageReceivedSignalInfo instance SignalInfo UserContentManagerScriptMessageReceivedSignalInfo where type HaskellCallbackType UserContentManagerScriptMessageReceivedSignalInfo = UserContentManagerScriptMessageReceivedCallback connectSignal _ obj cb connectMode = do let cb' = wrap_UserContentManagerScriptMessageReceivedCallback cb cb'' <- mk_UserContentManagerScriptMessageReceivedCallback cb' connectSignalFunPtr obj "script-message-received" cb'' connectMode type instance O.SignalList UserContentManager = UserContentManagerSignalList type UserContentManagerSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo), '("scriptMessageReceived", UserContentManagerScriptMessageReceivedSignalInfo)] :: [(Symbol, *)]) #endif -- method UserContentManager::new -- method type : Constructor -- Args : [] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "WebKit2", name = "UserContentManager"})) -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_new" webkit_user_content_manager_new :: IO (Ptr UserContentManager) {- | Creates a new user content manager. /Since: 2.6/ -} userContentManagerNew :: (B.CallStack.HasCallStack, MonadIO m) => m UserContentManager {- ^ __Returns:__ A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} userContentManagerNew = liftIO $ do result <- webkit_user_content_manager_new checkUnexpectedReturnNULL "userContentManagerNew" result result' <- (wrapObject UserContentManager) result return result' #if ENABLE_OVERLOADING #endif -- method UserContentManager::add_filter -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filter", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentFilter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentFilter", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_add_filter" webkit_user_content_manager_add_filter :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) Ptr WebKit2.UserContentFilter.UserContentFilter -> -- filter : TInterface (Name {namespace = "WebKit2", name = "UserContentFilter"}) IO () {- | Adds a 'GI.WebKit2.Structs.UserContentFilter.UserContentFilter' to the given 'GI.WebKit2.Objects.UserContentManager.UserContentManager'. The same 'GI.WebKit2.Structs.UserContentFilter.UserContentFilter' can be reused with multiple 'GI.WebKit2.Objects.UserContentManager.UserContentManager' instances. Filters need to be saved and loaded from 'GI.WebKit2.Objects.UserContentFilterStore.UserContentFilterStore'. /Since: 2.24/ -} userContentManagerAddFilter :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> WebKit2.UserContentFilter.UserContentFilter {- ^ /@filter@/: A 'GI.WebKit2.Structs.UserContentFilter.UserContentFilter' -} -> m () userContentManagerAddFilter manager filter = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager filter' <- unsafeManagedPtrGetPtr filter webkit_user_content_manager_add_filter manager' filter' touchManagedPtr manager touchManagedPtr filter return () #if ENABLE_OVERLOADING data UserContentManagerAddFilterMethodInfo instance (signature ~ (WebKit2.UserContentFilter.UserContentFilter -> m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerAddFilterMethodInfo a signature where overloadedMethod _ = userContentManagerAddFilter #endif -- method UserContentManager::add_script -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "script", argType = TInterface (Name {namespace = "WebKit2", name = "UserScript"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserScript", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_add_script" webkit_user_content_manager_add_script :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) Ptr WebKit2.UserScript.UserScript -> -- script : TInterface (Name {namespace = "WebKit2", name = "UserScript"}) IO () {- | Adds a 'GI.WebKit2.Structs.UserScript.UserScript' to the given 'GI.WebKit2.Objects.UserContentManager.UserContentManager'. The same 'GI.WebKit2.Structs.UserScript.UserScript' can be reused with multiple 'GI.WebKit2.Objects.UserContentManager.UserContentManager' instances. /Since: 2.6/ -} userContentManagerAddScript :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> WebKit2.UserScript.UserScript {- ^ /@script@/: A 'GI.WebKit2.Structs.UserScript.UserScript' -} -> m () userContentManagerAddScript manager script = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager script' <- unsafeManagedPtrGetPtr script webkit_user_content_manager_add_script manager' script' touchManagedPtr manager touchManagedPtr script return () #if ENABLE_OVERLOADING data UserContentManagerAddScriptMethodInfo instance (signature ~ (WebKit2.UserScript.UserScript -> m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerAddScriptMethodInfo a signature where overloadedMethod _ = userContentManagerAddScript #endif -- method UserContentManager::add_style_sheet -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stylesheet", argType = TInterface (Name {namespace = "WebKit2", name = "UserStyleSheet"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserStyleSheet", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_add_style_sheet" webkit_user_content_manager_add_style_sheet :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) Ptr WebKit2.UserStyleSheet.UserStyleSheet -> -- stylesheet : TInterface (Name {namespace = "WebKit2", name = "UserStyleSheet"}) IO () {- | Adds a 'GI.WebKit2.Structs.UserStyleSheet.UserStyleSheet' to the given 'GI.WebKit2.Objects.UserContentManager.UserContentManager'. The same 'GI.WebKit2.Structs.UserStyleSheet.UserStyleSheet' can be reused with multiple 'GI.WebKit2.Objects.UserContentManager.UserContentManager' instances. /Since: 2.6/ -} userContentManagerAddStyleSheet :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> WebKit2.UserStyleSheet.UserStyleSheet {- ^ /@stylesheet@/: A 'GI.WebKit2.Structs.UserStyleSheet.UserStyleSheet' -} -> m () userContentManagerAddStyleSheet manager stylesheet = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager stylesheet' <- unsafeManagedPtrGetPtr stylesheet webkit_user_content_manager_add_style_sheet manager' stylesheet' touchManagedPtr manager touchManagedPtr stylesheet return () #if ENABLE_OVERLOADING data UserContentManagerAddStyleSheetMethodInfo instance (signature ~ (WebKit2.UserStyleSheet.UserStyleSheet -> m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerAddStyleSheetMethodInfo a signature where overloadedMethod _ = userContentManagerAddStyleSheet #endif -- method UserContentManager::register_script_message_handler -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Name of the script message channel", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TBoolean) -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_register_script_message_handler" webkit_user_content_manager_register_script_message_handler :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) CString -> -- name : TBasicType TUTF8 IO CInt {- | Registers a new user script message handler. After it is registered, scripts can use @window.webkit.messageHandlers.<name>.postMessage(value)@ to send messages. Those messages are received by connecting handlers to the 'GI.WebKit2.Objects.UserContentManager.UserContentManager'::@/script-message-received/@ signal. The handler name is used as the detail of the signal. To avoid race conditions between registering the handler name, and starting to receive the signals, it is recommended to connect to the signal *before* registering the handler name: \\ WebKitWebView *view = webkit_web_view_new (); WebKitUserContentManager *manager = webkit_web_view_get_user_content_manager (); g_signal_connect (manager, \"script-message-received::foobar\", G_CALLBACK (handle_script_message), NULL); webkit_user_content_manager_register_script_message_handler (manager, \"foobar\"); \<\/programlisting>\<\/informalexample> Registering a script message handler will fail if the requested name has been already registered before. /Since: 2.8/ -} userContentManagerRegisterScriptMessageHandler :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> T.Text {- ^ /@name@/: Name of the script message channel -} -> m Bool {- ^ __Returns:__ 'True' if message handler was registered successfully, or 'False' otherwise. -} userContentManagerRegisterScriptMessageHandler manager name = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager name' <- textToCString name result <- webkit_user_content_manager_register_script_message_handler manager' name' let result' = (/= 0) result touchManagedPtr manager freeMem name' return result' #if ENABLE_OVERLOADING data UserContentManagerRegisterScriptMessageHandlerMethodInfo instance (signature ~ (T.Text -> m Bool), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerRegisterScriptMessageHandlerMethodInfo a signature where overloadedMethod _ = userContentManagerRegisterScriptMessageHandler #endif -- method UserContentManager::register_script_message_handler_in_world -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Name of the script message channel", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "world_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the name of a #WebKitScriptWorld", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TBoolean) -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_register_script_message_handler_in_world" webkit_user_content_manager_register_script_message_handler_in_world :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) CString -> -- name : TBasicType TUTF8 CString -> -- world_name : TBasicType TUTF8 IO CInt {- | Registers a new user script message handler in script world with name /@worldName@/. See 'GI.WebKit2.Objects.UserContentManager.userContentManagerRegisterScriptMessageHandler' for full description. Registering a script message handler will fail if the requested name has been already registered before. /Since: 2.22/ -} userContentManagerRegisterScriptMessageHandlerInWorld :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> T.Text {- ^ /@name@/: Name of the script message channel -} -> T.Text {- ^ /@worldName@/: the name of a @/WebKitScriptWorld/@ -} -> m Bool {- ^ __Returns:__ 'True' if message handler was registered successfully, or 'False' otherwise. -} userContentManagerRegisterScriptMessageHandlerInWorld manager name worldName = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager name' <- textToCString name worldName' <- textToCString worldName result <- webkit_user_content_manager_register_script_message_handler_in_world manager' name' worldName' let result' = (/= 0) result touchManagedPtr manager freeMem name' freeMem worldName' return result' #if ENABLE_OVERLOADING data UserContentManagerRegisterScriptMessageHandlerInWorldMethodInfo instance (signature ~ (T.Text -> T.Text -> m Bool), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerRegisterScriptMessageHandlerInWorldMethodInfo a signature where overloadedMethod _ = userContentManagerRegisterScriptMessageHandlerInWorld #endif -- method UserContentManager::remove_all_filters -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_remove_all_filters" webkit_user_content_manager_remove_all_filters :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) IO () {- | Removes all content filters from the given 'GI.WebKit2.Objects.UserContentManager.UserContentManager'. /Since: 2.24/ -} userContentManagerRemoveAllFilters :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> m () userContentManagerRemoveAllFilters manager = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager webkit_user_content_manager_remove_all_filters manager' touchManagedPtr manager return () #if ENABLE_OVERLOADING data UserContentManagerRemoveAllFiltersMethodInfo instance (signature ~ (m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerRemoveAllFiltersMethodInfo a signature where overloadedMethod _ = userContentManagerRemoveAllFilters #endif -- method UserContentManager::remove_all_scripts -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_remove_all_scripts" webkit_user_content_manager_remove_all_scripts :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) IO () {- | Removes all user scripts from the given 'GI.WebKit2.Objects.UserContentManager.UserContentManager' /Since: 2.6/ -} userContentManagerRemoveAllScripts :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> m () userContentManagerRemoveAllScripts manager = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager webkit_user_content_manager_remove_all_scripts manager' touchManagedPtr manager return () #if ENABLE_OVERLOADING data UserContentManagerRemoveAllScriptsMethodInfo instance (signature ~ (m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerRemoveAllScriptsMethodInfo a signature where overloadedMethod _ = userContentManagerRemoveAllScripts #endif -- method UserContentManager::remove_all_style_sheets -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_remove_all_style_sheets" webkit_user_content_manager_remove_all_style_sheets :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) IO () {- | Removes all user style sheets from the given 'GI.WebKit2.Objects.UserContentManager.UserContentManager'. /Since: 2.6/ -} userContentManagerRemoveAllStyleSheets :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> m () userContentManagerRemoveAllStyleSheets manager = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager webkit_user_content_manager_remove_all_style_sheets manager' touchManagedPtr manager return () #if ENABLE_OVERLOADING data UserContentManagerRemoveAllStyleSheetsMethodInfo instance (signature ~ (m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerRemoveAllStyleSheetsMethodInfo a signature where overloadedMethod _ = userContentManagerRemoveAllStyleSheets #endif -- method UserContentManager::remove_filter -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "filter", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentFilter"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentFilter", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_remove_filter" webkit_user_content_manager_remove_filter :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) Ptr WebKit2.UserContentFilter.UserContentFilter -> -- filter : TInterface (Name {namespace = "WebKit2", name = "UserContentFilter"}) IO () {- | Removes a filter from the given 'GI.WebKit2.Objects.UserContentManager.UserContentManager'. Since 2.24 -} userContentManagerRemoveFilter :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> WebKit2.UserContentFilter.UserContentFilter {- ^ /@filter@/: A 'GI.WebKit2.Structs.UserContentFilter.UserContentFilter' -} -> m () userContentManagerRemoveFilter manager filter = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager filter' <- unsafeManagedPtrGetPtr filter webkit_user_content_manager_remove_filter manager' filter' touchManagedPtr manager touchManagedPtr filter return () #if ENABLE_OVERLOADING data UserContentManagerRemoveFilterMethodInfo instance (signature ~ (WebKit2.UserContentFilter.UserContentFilter -> m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerRemoveFilterMethodInfo a signature where overloadedMethod _ = userContentManagerRemoveFilter #endif -- method UserContentManager::unregister_script_message_handler -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Name of the script message channel", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_unregister_script_message_handler" webkit_user_content_manager_unregister_script_message_handler :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) CString -> -- name : TBasicType TUTF8 IO () {- | Unregisters a previously registered message handler. Note that this does *not* disconnect handlers for the 'GI.WebKit2.Objects.UserContentManager.UserContentManager'::@/script-message-received/@ signal; they will be kept connected, but the signal will not be emitted unless the handler name is registered again. See also 'GI.WebKit2.Objects.UserContentManager.userContentManagerRegisterScriptMessageHandler'. /Since: 2.8/ -} userContentManagerUnregisterScriptMessageHandler :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> T.Text {- ^ /@name@/: Name of the script message channel -} -> m () userContentManagerUnregisterScriptMessageHandler manager name = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager name' <- textToCString name webkit_user_content_manager_unregister_script_message_handler manager' name' touchManagedPtr manager freeMem name' return () #if ENABLE_OVERLOADING data UserContentManagerUnregisterScriptMessageHandlerMethodInfo instance (signature ~ (T.Text -> m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerUnregisterScriptMessageHandlerMethodInfo a signature where overloadedMethod _ = userContentManagerUnregisterScriptMessageHandler #endif -- method UserContentManager::unregister_script_message_handler_in_world -- method type : OrdinaryMethod -- Args : [Arg {argCName = "manager", argType = TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "A #WebKitUserContentManager", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "Name of the script message channel", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "world_name", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the name of a #WebKitScriptWorld", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_user_content_manager_unregister_script_message_handler_in_world" webkit_user_content_manager_unregister_script_message_handler_in_world :: Ptr UserContentManager -> -- manager : TInterface (Name {namespace = "WebKit2", name = "UserContentManager"}) CString -> -- name : TBasicType TUTF8 CString -> -- world_name : TBasicType TUTF8 IO () {- | Unregisters a previously registered message handler in script world with name /@worldName@/. Note that this does *not* disconnect handlers for the 'GI.WebKit2.Objects.UserContentManager.UserContentManager'::@/script-message-received/@ signal; they will be kept connected, but the signal will not be emitted unless the handler name is registered again. See also 'GI.WebKit2.Objects.UserContentManager.userContentManagerRegisterScriptMessageHandlerInWorld'. /Since: 2.22/ -} userContentManagerUnregisterScriptMessageHandlerInWorld :: (B.CallStack.HasCallStack, MonadIO m, IsUserContentManager a) => a {- ^ /@manager@/: A 'GI.WebKit2.Objects.UserContentManager.UserContentManager' -} -> T.Text {- ^ /@name@/: Name of the script message channel -} -> T.Text {- ^ /@worldName@/: the name of a @/WebKitScriptWorld/@ -} -> m () userContentManagerUnregisterScriptMessageHandlerInWorld manager name worldName = liftIO $ do manager' <- unsafeManagedPtrCastPtr manager name' <- textToCString name worldName' <- textToCString worldName webkit_user_content_manager_unregister_script_message_handler_in_world manager' name' worldName' touchManagedPtr manager freeMem name' freeMem worldName' return () #if ENABLE_OVERLOADING data UserContentManagerUnregisterScriptMessageHandlerInWorldMethodInfo instance (signature ~ (T.Text -> T.Text -> m ()), MonadIO m, IsUserContentManager a) => O.MethodInfo UserContentManagerUnregisterScriptMessageHandlerInWorldMethodInfo a signature where overloadedMethod _ = userContentManagerUnregisterScriptMessageHandlerInWorld #endif