gi-webkit2-4.0.21: GI/WebKit2/Objects/UserContentManager.hs
{- |
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
\<code>window.webkit.messageHandlers.<name>.@/postMessage()/@\<\/code>, after registering
\<code><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 <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> 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 <https://github.com/haskell-gi/haskell-gi/wiki/Overloading overloading> 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:
\<informalexample>\<programlisting>
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