{- | 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.URISchemeRequest ( -- * Exported types URISchemeRequest(..) , IsURISchemeRequest , toURISchemeRequest , noURISchemeRequest , -- * Methods -- ** finish #method:finish# #if ENABLE_OVERLOADING URISchemeRequestFinishMethodInfo , #endif uRISchemeRequestFinish , -- ** finishError #method:finishError# #if ENABLE_OVERLOADING URISchemeRequestFinishErrorMethodInfo , #endif uRISchemeRequestFinishError , -- ** getPath #method:getPath# #if ENABLE_OVERLOADING URISchemeRequestGetPathMethodInfo , #endif uRISchemeRequestGetPath , -- ** getScheme #method:getScheme# #if ENABLE_OVERLOADING URISchemeRequestGetSchemeMethodInfo , #endif uRISchemeRequestGetScheme , -- ** getUri #method:getUri# #if ENABLE_OVERLOADING URISchemeRequestGetUriMethodInfo , #endif uRISchemeRequestGetUri , -- ** getWebView #method:getWebView# #if ENABLE_OVERLOADING URISchemeRequestGetWebViewMethodInfo , #endif uRISchemeRequestGetWebView , ) 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 qualified GI.Gio.Objects.InputStream as Gio.InputStream import {-# SOURCE #-} qualified GI.WebKit2.Objects.WebView as WebKit2.WebView -- | Memory-managed wrapper type. newtype URISchemeRequest = URISchemeRequest (ManagedPtr URISchemeRequest) foreign import ccall "webkit_uri_scheme_request_get_type" c_webkit_uri_scheme_request_get_type :: IO GType instance GObject URISchemeRequest where gobjectType = c_webkit_uri_scheme_request_get_type -- | Type class for types which can be safely cast to `URISchemeRequest`, for instance with `toURISchemeRequest`. class (GObject o, O.IsDescendantOf URISchemeRequest o) => IsURISchemeRequest o instance (GObject o, O.IsDescendantOf URISchemeRequest o) => IsURISchemeRequest o instance O.HasParentTypes URISchemeRequest type instance O.ParentTypes URISchemeRequest = '[GObject.Object.Object] -- | Cast to `URISchemeRequest`, for types for which this is known to be safe. For general casts, use `Data.GI.Base.ManagedPtr.castTo`. toURISchemeRequest :: (MonadIO m, IsURISchemeRequest o) => o -> m URISchemeRequest toURISchemeRequest = liftIO . unsafeCastTo URISchemeRequest -- | A convenience alias for `Nothing` :: `Maybe` `URISchemeRequest`. noURISchemeRequest :: Maybe URISchemeRequest noURISchemeRequest = Nothing #if ENABLE_OVERLOADING type family ResolveURISchemeRequestMethod (t :: Symbol) (o :: *) :: * where ResolveURISchemeRequestMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo ResolveURISchemeRequestMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo ResolveURISchemeRequestMethod "finish" o = URISchemeRequestFinishMethodInfo ResolveURISchemeRequestMethod "finishError" o = URISchemeRequestFinishErrorMethodInfo ResolveURISchemeRequestMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo ResolveURISchemeRequestMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo ResolveURISchemeRequestMethod "getv" o = GObject.Object.ObjectGetvMethodInfo ResolveURISchemeRequestMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo ResolveURISchemeRequestMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo ResolveURISchemeRequestMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo ResolveURISchemeRequestMethod "ref" o = GObject.Object.ObjectRefMethodInfo ResolveURISchemeRequestMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo ResolveURISchemeRequestMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo ResolveURISchemeRequestMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo ResolveURISchemeRequestMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo ResolveURISchemeRequestMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo ResolveURISchemeRequestMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo ResolveURISchemeRequestMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo ResolveURISchemeRequestMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo ResolveURISchemeRequestMethod "getPath" o = URISchemeRequestGetPathMethodInfo ResolveURISchemeRequestMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo ResolveURISchemeRequestMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo ResolveURISchemeRequestMethod "getScheme" o = URISchemeRequestGetSchemeMethodInfo ResolveURISchemeRequestMethod "getUri" o = URISchemeRequestGetUriMethodInfo ResolveURISchemeRequestMethod "getWebView" o = URISchemeRequestGetWebViewMethodInfo ResolveURISchemeRequestMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo ResolveURISchemeRequestMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo ResolveURISchemeRequestMethod l o = O.MethodResolutionFailed l o instance (info ~ ResolveURISchemeRequestMethod t URISchemeRequest, O.MethodInfo info URISchemeRequest p) => OL.IsLabel t (URISchemeRequest -> 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 #if ENABLE_OVERLOADING instance O.HasAttributeList URISchemeRequest type instance O.AttributeList URISchemeRequest = URISchemeRequestAttributeList type URISchemeRequestAttributeList = ('[ ] :: [(Symbol, *)]) #endif #if ENABLE_OVERLOADING #endif #if ENABLE_OVERLOADING type instance O.SignalList URISchemeRequest = URISchemeRequestSignalList type URISchemeRequestSignalList = ('[ '("notify", GObject.Object.ObjectNotifySignalInfo)] :: [(Symbol, *)]) #endif -- method URISchemeRequest::finish -- method type : OrdinaryMethod -- Args : [Arg {argCName = "request", argType = TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitURISchemeRequest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stream", argType = TInterface (Name {namespace = "Gio", name = "InputStream"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GInputStream to read the contents of the request", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "stream_length", argType = TBasicType TInt64, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "the length of the stream or -1 if not known", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "mime_type", argType = TBasicType TUTF8, direction = DirectionIn, mayBeNull = True, argDoc = Documentation {rawDocText = Just "the content type of the stream or %NULL if not known", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_uri_scheme_request_finish" webkit_uri_scheme_request_finish :: Ptr URISchemeRequest -> -- request : TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}) Ptr Gio.InputStream.InputStream -> -- stream : TInterface (Name {namespace = "Gio", name = "InputStream"}) Int64 -> -- stream_length : TBasicType TInt64 CString -> -- mime_type : TBasicType TUTF8 IO () {- | Finish a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' by setting the contents of the request and its mime type. -} uRISchemeRequestFinish :: (B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a, Gio.InputStream.IsInputStream b) => a {- ^ /@request@/: a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' -} -> b {- ^ /@stream@/: a 'GI.Gio.Objects.InputStream.InputStream' to read the contents of the request -} -> Int64 {- ^ /@streamLength@/: the length of the stream or -1 if not known -} -> Maybe (T.Text) {- ^ /@mimeType@/: the content type of the stream or 'Nothing' if not known -} -> m () uRISchemeRequestFinish request stream streamLength mimeType = liftIO $ do request' <- unsafeManagedPtrCastPtr request stream' <- unsafeManagedPtrCastPtr stream maybeMimeType <- case mimeType of Nothing -> return nullPtr Just jMimeType -> do jMimeType' <- textToCString jMimeType return jMimeType' webkit_uri_scheme_request_finish request' stream' streamLength maybeMimeType touchManagedPtr request touchManagedPtr stream freeMem maybeMimeType return () #if ENABLE_OVERLOADING data URISchemeRequestFinishMethodInfo instance (signature ~ (b -> Int64 -> Maybe (T.Text) -> m ()), MonadIO m, IsURISchemeRequest a, Gio.InputStream.IsInputStream b) => O.MethodInfo URISchemeRequestFinishMethodInfo a signature where overloadedMethod _ = uRISchemeRequestFinish #endif -- method URISchemeRequest::finish_error -- method type : OrdinaryMethod -- Args : [Arg {argCName = "request", argType = TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitURISchemeRequest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing},Arg {argCName = "error", argType = TError, direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #GError that will be passed to the #WebKitWebView", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Nothing -- throws : False -- Skip return : False foreign import ccall "webkit_uri_scheme_request_finish_error" webkit_uri_scheme_request_finish_error :: Ptr URISchemeRequest -> -- request : TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}) Ptr GError -> -- error : TError IO () {- | Finish a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' with a 'GError'. /Since: 2.2/ -} uRISchemeRequestFinishError :: (B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) => a {- ^ /@request@/: a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' -} -> GError {- ^ /@error@/: a 'GError' that will be passed to the 'GI.WebKit2.Objects.WebView.WebView' -} -> m () uRISchemeRequestFinishError request error_ = liftIO $ do request' <- unsafeManagedPtrCastPtr request error_' <- unsafeManagedPtrGetPtr error_ webkit_uri_scheme_request_finish_error request' error_' touchManagedPtr request touchManagedPtr error_ return () #if ENABLE_OVERLOADING data URISchemeRequestFinishErrorMethodInfo instance (signature ~ (GError -> m ()), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestFinishErrorMethodInfo a signature where overloadedMethod _ = uRISchemeRequestFinishError #endif -- method URISchemeRequest::get_path -- method type : OrdinaryMethod -- Args : [Arg {argCName = "request", argType = TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitURISchemeRequest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "webkit_uri_scheme_request_get_path" webkit_uri_scheme_request_get_path :: Ptr URISchemeRequest -> -- request : TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}) IO CString {- | Get the URI path of /@request@/ -} uRISchemeRequestGetPath :: (B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) => a {- ^ /@request@/: a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' -} -> m T.Text {- ^ __Returns:__ the URI path of /@request@/ -} uRISchemeRequestGetPath request = liftIO $ do request' <- unsafeManagedPtrCastPtr request result <- webkit_uri_scheme_request_get_path request' checkUnexpectedReturnNULL "uRISchemeRequestGetPath" result result' <- cstringToText result touchManagedPtr request return result' #if ENABLE_OVERLOADING data URISchemeRequestGetPathMethodInfo instance (signature ~ (m T.Text), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetPathMethodInfo a signature where overloadedMethod _ = uRISchemeRequestGetPath #endif -- method URISchemeRequest::get_scheme -- method type : OrdinaryMethod -- Args : [Arg {argCName = "request", argType = TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitURISchemeRequest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "webkit_uri_scheme_request_get_scheme" webkit_uri_scheme_request_get_scheme :: Ptr URISchemeRequest -> -- request : TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}) IO CString {- | Get the URI scheme of /@request@/ -} uRISchemeRequestGetScheme :: (B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) => a {- ^ /@request@/: a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' -} -> m T.Text {- ^ __Returns:__ the URI scheme of /@request@/ -} uRISchemeRequestGetScheme request = liftIO $ do request' <- unsafeManagedPtrCastPtr request result <- webkit_uri_scheme_request_get_scheme request' checkUnexpectedReturnNULL "uRISchemeRequestGetScheme" result result' <- cstringToText result touchManagedPtr request return result' #if ENABLE_OVERLOADING data URISchemeRequestGetSchemeMethodInfo instance (signature ~ (m T.Text), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetSchemeMethodInfo a signature where overloadedMethod _ = uRISchemeRequestGetScheme #endif -- method URISchemeRequest::get_uri -- method type : OrdinaryMethod -- Args : [Arg {argCName = "request", argType = TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitURISchemeRequest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TBasicType TUTF8) -- throws : False -- Skip return : False foreign import ccall "webkit_uri_scheme_request_get_uri" webkit_uri_scheme_request_get_uri :: Ptr URISchemeRequest -> -- request : TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}) IO CString {- | Get the URI of /@request@/ -} uRISchemeRequestGetUri :: (B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) => a {- ^ /@request@/: a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' -} -> m T.Text {- ^ __Returns:__ the full URI of /@request@/ -} uRISchemeRequestGetUri request = liftIO $ do request' <- unsafeManagedPtrCastPtr request result <- webkit_uri_scheme_request_get_uri request' checkUnexpectedReturnNULL "uRISchemeRequestGetUri" result result' <- cstringToText result touchManagedPtr request return result' #if ENABLE_OVERLOADING data URISchemeRequestGetUriMethodInfo instance (signature ~ (m T.Text), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetUriMethodInfo a signature where overloadedMethod _ = uRISchemeRequestGetUri #endif -- method URISchemeRequest::get_web_view -- method type : OrdinaryMethod -- Args : [Arg {argCName = "request", argType = TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}), direction = DirectionIn, mayBeNull = False, argDoc = Documentation {rawDocText = Just "a #WebKitURISchemeRequest", sinceVersion = Nothing}, argScope = ScopeTypeInvalid, argClosure = -1, argDestroy = -1, argCallerAllocates = False, transfer = TransferNothing}] -- Lengths : [] -- returnType : Just (TInterface (Name {namespace = "WebKit2", name = "WebView"})) -- throws : False -- Skip return : False foreign import ccall "webkit_uri_scheme_request_get_web_view" webkit_uri_scheme_request_get_web_view :: Ptr URISchemeRequest -> -- request : TInterface (Name {namespace = "WebKit2", name = "URISchemeRequest"}) IO (Ptr WebKit2.WebView.WebView) {- | Get the 'GI.WebKit2.Objects.WebView.WebView' that initiated the request. -} uRISchemeRequestGetWebView :: (B.CallStack.HasCallStack, MonadIO m, IsURISchemeRequest a) => a {- ^ /@request@/: a 'GI.WebKit2.Objects.URISchemeRequest.URISchemeRequest' -} -> m WebKit2.WebView.WebView {- ^ __Returns:__ the 'GI.WebKit2.Objects.WebView.WebView' that initiated /@request@/. -} uRISchemeRequestGetWebView request = liftIO $ do request' <- unsafeManagedPtrCastPtr request result <- webkit_uri_scheme_request_get_web_view request' checkUnexpectedReturnNULL "uRISchemeRequestGetWebView" result result' <- (newObject WebKit2.WebView.WebView) result touchManagedPtr request return result' #if ENABLE_OVERLOADING data URISchemeRequestGetWebViewMethodInfo instance (signature ~ (m WebKit2.WebView.WebView), MonadIO m, IsURISchemeRequest a) => O.MethodInfo URISchemeRequestGetWebViewMethodInfo a signature where overloadedMethod _ = uRISchemeRequestGetWebView #endif