module GI.WebKit2.Structs.NavigationAction
(
NavigationAction(..) ,
noNavigationAction ,
NavigationActionCopyMethodInfo ,
navigationActionCopy ,
NavigationActionFreeMethodInfo ,
navigationActionFree ,
NavigationActionGetModifiersMethodInfo ,
navigationActionGetModifiers ,
NavigationActionGetMouseButtonMethodInfo,
navigationActionGetMouseButton ,
NavigationActionGetNavigationTypeMethodInfo,
navigationActionGetNavigationType ,
NavigationActionGetRequestMethodInfo ,
navigationActionGetRequest ,
NavigationActionIsUserGestureMethodInfo ,
navigationActionIsUserGesture ,
) 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.WebKit2.Enums as WebKit2.Enums
import qualified GI.WebKit2.Objects.URIRequest as WebKit2.URIRequest
newtype NavigationAction = NavigationAction (ManagedPtr NavigationAction)
foreign import ccall "webkit_navigation_action_get_type" c_webkit_navigation_action_get_type ::
IO GType
instance BoxedObject NavigationAction where
boxedType _ = c_webkit_navigation_action_get_type
noNavigationAction :: Maybe NavigationAction
noNavigationAction = Nothing
instance O.HasAttributeList NavigationAction
type instance O.AttributeList NavigationAction = NavigationActionAttributeList
type NavigationActionAttributeList = ('[ ] :: [(Symbol, *)])
foreign import ccall "webkit_navigation_action_copy" webkit_navigation_action_copy ::
Ptr NavigationAction ->
IO (Ptr NavigationAction)
navigationActionCopy ::
(B.CallStack.HasCallStack, MonadIO m) =>
NavigationAction
-> m NavigationAction
navigationActionCopy navigation = liftIO $ do
navigation' <- unsafeManagedPtrGetPtr navigation
result <- webkit_navigation_action_copy navigation'
checkUnexpectedReturnNULL "navigationActionCopy" result
result' <- (wrapBoxed NavigationAction) result
touchManagedPtr navigation
return result'
data NavigationActionCopyMethodInfo
instance (signature ~ (m NavigationAction), MonadIO m) => O.MethodInfo NavigationActionCopyMethodInfo NavigationAction signature where
overloadedMethod _ = navigationActionCopy
foreign import ccall "webkit_navigation_action_free" webkit_navigation_action_free ::
Ptr NavigationAction ->
IO ()
navigationActionFree ::
(B.CallStack.HasCallStack, MonadIO m) =>
NavigationAction
-> m ()
navigationActionFree navigation = liftIO $ do
navigation' <- unsafeManagedPtrGetPtr navigation
webkit_navigation_action_free navigation'
touchManagedPtr navigation
return ()
data NavigationActionFreeMethodInfo
instance (signature ~ (m ()), MonadIO m) => O.MethodInfo NavigationActionFreeMethodInfo NavigationAction signature where
overloadedMethod _ = navigationActionFree
foreign import ccall "webkit_navigation_action_get_modifiers" webkit_navigation_action_get_modifiers ::
Ptr NavigationAction ->
IO Word32
navigationActionGetModifiers ::
(B.CallStack.HasCallStack, MonadIO m) =>
NavigationAction
-> m Word32
navigationActionGetModifiers navigation = liftIO $ do
navigation' <- unsafeManagedPtrGetPtr navigation
result <- webkit_navigation_action_get_modifiers navigation'
touchManagedPtr navigation
return result
data NavigationActionGetModifiersMethodInfo
instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo NavigationActionGetModifiersMethodInfo NavigationAction signature where
overloadedMethod _ = navigationActionGetModifiers
foreign import ccall "webkit_navigation_action_get_mouse_button" webkit_navigation_action_get_mouse_button ::
Ptr NavigationAction ->
IO Word32
navigationActionGetMouseButton ::
(B.CallStack.HasCallStack, MonadIO m) =>
NavigationAction
-> m Word32
navigationActionGetMouseButton navigation = liftIO $ do
navigation' <- unsafeManagedPtrGetPtr navigation
result <- webkit_navigation_action_get_mouse_button navigation'
touchManagedPtr navigation
return result
data NavigationActionGetMouseButtonMethodInfo
instance (signature ~ (m Word32), MonadIO m) => O.MethodInfo NavigationActionGetMouseButtonMethodInfo NavigationAction signature where
overloadedMethod _ = navigationActionGetMouseButton
foreign import ccall "webkit_navigation_action_get_navigation_type" webkit_navigation_action_get_navigation_type ::
Ptr NavigationAction ->
IO CUInt
navigationActionGetNavigationType ::
(B.CallStack.HasCallStack, MonadIO m) =>
NavigationAction
-> m WebKit2.Enums.NavigationType
navigationActionGetNavigationType navigation = liftIO $ do
navigation' <- unsafeManagedPtrGetPtr navigation
result <- webkit_navigation_action_get_navigation_type navigation'
let result' = (toEnum . fromIntegral) result
touchManagedPtr navigation
return result'
data NavigationActionGetNavigationTypeMethodInfo
instance (signature ~ (m WebKit2.Enums.NavigationType), MonadIO m) => O.MethodInfo NavigationActionGetNavigationTypeMethodInfo NavigationAction signature where
overloadedMethod _ = navigationActionGetNavigationType
foreign import ccall "webkit_navigation_action_get_request" webkit_navigation_action_get_request ::
Ptr NavigationAction ->
IO (Ptr WebKit2.URIRequest.URIRequest)
navigationActionGetRequest ::
(B.CallStack.HasCallStack, MonadIO m) =>
NavigationAction
-> m WebKit2.URIRequest.URIRequest
navigationActionGetRequest navigation = liftIO $ do
navigation' <- unsafeManagedPtrGetPtr navigation
result <- webkit_navigation_action_get_request navigation'
checkUnexpectedReturnNULL "navigationActionGetRequest" result
result' <- (newObject WebKit2.URIRequest.URIRequest) result
touchManagedPtr navigation
return result'
data NavigationActionGetRequestMethodInfo
instance (signature ~ (m WebKit2.URIRequest.URIRequest), MonadIO m) => O.MethodInfo NavigationActionGetRequestMethodInfo NavigationAction signature where
overloadedMethod _ = navigationActionGetRequest
foreign import ccall "webkit_navigation_action_is_user_gesture" webkit_navigation_action_is_user_gesture ::
Ptr NavigationAction ->
IO CInt
navigationActionIsUserGesture ::
(B.CallStack.HasCallStack, MonadIO m) =>
NavigationAction
-> m Bool
navigationActionIsUserGesture navigation = liftIO $ do
navigation' <- unsafeManagedPtrGetPtr navigation
result <- webkit_navigation_action_is_user_gesture navigation'
let result' = (/= 0) result
touchManagedPtr navigation
return result'
data NavigationActionIsUserGestureMethodInfo
instance (signature ~ (m Bool), MonadIO m) => O.MethodInfo NavigationActionIsUserGestureMethodInfo NavigationAction signature where
overloadedMethod _ = navigationActionIsUserGesture
type family ResolveNavigationActionMethod (t :: Symbol) (o :: *) :: * where
ResolveNavigationActionMethod "copy" o = NavigationActionCopyMethodInfo
ResolveNavigationActionMethod "free" o = NavigationActionFreeMethodInfo
ResolveNavigationActionMethod "isUserGesture" o = NavigationActionIsUserGestureMethodInfo
ResolveNavigationActionMethod "getModifiers" o = NavigationActionGetModifiersMethodInfo
ResolveNavigationActionMethod "getMouseButton" o = NavigationActionGetMouseButtonMethodInfo
ResolveNavigationActionMethod "getNavigationType" o = NavigationActionGetNavigationTypeMethodInfo
ResolveNavigationActionMethod "getRequest" o = NavigationActionGetRequestMethodInfo
ResolveNavigationActionMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveNavigationActionMethod t NavigationAction, O.MethodInfo info NavigationAction p) => O.IsLabelProxy t (NavigationAction -> p) where
fromLabelProxy _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#if MIN_VERSION_base(4,9,0)
instance (info ~ ResolveNavigationActionMethod t NavigationAction, O.MethodInfo info NavigationAction p) => O.IsLabel t (NavigationAction -> p) where
fromLabel _ = O.overloadedMethod (O.MethodProxy :: O.MethodProxy info)
#endif