#define ENABLE_OVERLOADING (MIN_VERSION_haskell_gi_overloading(1,0,0) \
&& !defined(__HADDOCK_VERSION__))
module GI.WebKit2.Objects.Download
(
Download(..) ,
IsDownload ,
toDownload ,
noDownload ,
#if ENABLE_OVERLOADING
DownloadCancelMethodInfo ,
#endif
downloadCancel ,
#if ENABLE_OVERLOADING
DownloadGetAllowOverwriteMethodInfo ,
#endif
downloadGetAllowOverwrite ,
#if ENABLE_OVERLOADING
DownloadGetDestinationMethodInfo ,
#endif
downloadGetDestination ,
#if ENABLE_OVERLOADING
DownloadGetElapsedTimeMethodInfo ,
#endif
downloadGetElapsedTime ,
#if ENABLE_OVERLOADING
DownloadGetEstimatedProgressMethodInfo ,
#endif
downloadGetEstimatedProgress ,
#if ENABLE_OVERLOADING
DownloadGetReceivedDataLengthMethodInfo ,
#endif
downloadGetReceivedDataLength ,
#if ENABLE_OVERLOADING
DownloadGetRequestMethodInfo ,
#endif
downloadGetRequest ,
#if ENABLE_OVERLOADING
DownloadGetResponseMethodInfo ,
#endif
downloadGetResponse ,
#if ENABLE_OVERLOADING
DownloadGetWebViewMethodInfo ,
#endif
downloadGetWebView ,
#if ENABLE_OVERLOADING
DownloadSetAllowOverwriteMethodInfo ,
#endif
downloadSetAllowOverwrite ,
#if ENABLE_OVERLOADING
DownloadSetDestinationMethodInfo ,
#endif
downloadSetDestination ,
#if ENABLE_OVERLOADING
DownloadAllowOverwritePropertyInfo ,
#endif
constructDownloadAllowOverwrite ,
#if ENABLE_OVERLOADING
downloadAllowOverwrite ,
#endif
getDownloadAllowOverwrite ,
setDownloadAllowOverwrite ,
#if ENABLE_OVERLOADING
DownloadDestinationPropertyInfo ,
#endif
#if ENABLE_OVERLOADING
downloadDestination ,
#endif
getDownloadDestination ,
#if ENABLE_OVERLOADING
DownloadEstimatedProgressPropertyInfo ,
#endif
#if ENABLE_OVERLOADING
downloadEstimatedProgress ,
#endif
getDownloadEstimatedProgress ,
#if ENABLE_OVERLOADING
DownloadResponsePropertyInfo ,
#endif
#if ENABLE_OVERLOADING
downloadResponse ,
#endif
getDownloadResponse ,
C_DownloadCreatedDestinationCallback ,
DownloadCreatedDestinationCallback ,
#if ENABLE_OVERLOADING
DownloadCreatedDestinationSignalInfo ,
#endif
afterDownloadCreatedDestination ,
genClosure_DownloadCreatedDestination ,
mk_DownloadCreatedDestinationCallback ,
noDownloadCreatedDestinationCallback ,
onDownloadCreatedDestination ,
wrap_DownloadCreatedDestinationCallback ,
C_DownloadDecideDestinationCallback ,
DownloadDecideDestinationCallback ,
#if ENABLE_OVERLOADING
DownloadDecideDestinationSignalInfo ,
#endif
afterDownloadDecideDestination ,
genClosure_DownloadDecideDestination ,
mk_DownloadDecideDestinationCallback ,
noDownloadDecideDestinationCallback ,
onDownloadDecideDestination ,
wrap_DownloadDecideDestinationCallback ,
C_DownloadFailedCallback ,
DownloadFailedCallback ,
#if ENABLE_OVERLOADING
DownloadFailedSignalInfo ,
#endif
afterDownloadFailed ,
genClosure_DownloadFailed ,
mk_DownloadFailedCallback ,
noDownloadFailedCallback ,
onDownloadFailed ,
wrap_DownloadFailedCallback ,
C_DownloadFinishedCallback ,
DownloadFinishedCallback ,
#if ENABLE_OVERLOADING
DownloadFinishedSignalInfo ,
#endif
afterDownloadFinished ,
genClosure_DownloadFinished ,
mk_DownloadFinishedCallback ,
noDownloadFinishedCallback ,
onDownloadFinished ,
wrap_DownloadFinishedCallback ,
C_DownloadReceivedDataCallback ,
DownloadReceivedDataCallback ,
#if ENABLE_OVERLOADING
DownloadReceivedDataSignalInfo ,
#endif
afterDownloadReceivedData ,
genClosure_DownloadReceivedData ,
mk_DownloadReceivedDataCallback ,
noDownloadReceivedDataCallback ,
onDownloadReceivedData ,
wrap_DownloadReceivedDataCallback ,
) 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.Objects.URIRequest as WebKit2.URIRequest
import {-# SOURCE #-} qualified GI.WebKit2.Objects.URIResponse as WebKit2.URIResponse
import {-# SOURCE #-} qualified GI.WebKit2.Objects.WebView as WebKit2.WebView
newtype Download = Download (ManagedPtr Download)
foreign import ccall "webkit_download_get_type"
c_webkit_download_get_type :: IO GType
instance GObject Download where
gobjectType = c_webkit_download_get_type
class (GObject o, O.IsDescendantOf Download o) => IsDownload o
instance (GObject o, O.IsDescendantOf Download o) => IsDownload o
instance O.HasParentTypes Download
type instance O.ParentTypes Download = '[GObject.Object.Object]
toDownload :: (MonadIO m, IsDownload o) => o -> m Download
toDownload = liftIO . unsafeCastTo Download
noDownload :: Maybe Download
noDownload = Nothing
#if ENABLE_OVERLOADING
type family ResolveDownloadMethod (t :: Symbol) (o :: *) :: * where
ResolveDownloadMethod "bindProperty" o = GObject.Object.ObjectBindPropertyMethodInfo
ResolveDownloadMethod "bindPropertyFull" o = GObject.Object.ObjectBindPropertyFullMethodInfo
ResolveDownloadMethod "cancel" o = DownloadCancelMethodInfo
ResolveDownloadMethod "forceFloating" o = GObject.Object.ObjectForceFloatingMethodInfo
ResolveDownloadMethod "freezeNotify" o = GObject.Object.ObjectFreezeNotifyMethodInfo
ResolveDownloadMethod "getv" o = GObject.Object.ObjectGetvMethodInfo
ResolveDownloadMethod "isFloating" o = GObject.Object.ObjectIsFloatingMethodInfo
ResolveDownloadMethod "notify" o = GObject.Object.ObjectNotifyMethodInfo
ResolveDownloadMethod "notifyByPspec" o = GObject.Object.ObjectNotifyByPspecMethodInfo
ResolveDownloadMethod "ref" o = GObject.Object.ObjectRefMethodInfo
ResolveDownloadMethod "refSink" o = GObject.Object.ObjectRefSinkMethodInfo
ResolveDownloadMethod "runDispose" o = GObject.Object.ObjectRunDisposeMethodInfo
ResolveDownloadMethod "stealData" o = GObject.Object.ObjectStealDataMethodInfo
ResolveDownloadMethod "stealQdata" o = GObject.Object.ObjectStealQdataMethodInfo
ResolveDownloadMethod "thawNotify" o = GObject.Object.ObjectThawNotifyMethodInfo
ResolveDownloadMethod "unref" o = GObject.Object.ObjectUnrefMethodInfo
ResolveDownloadMethod "watchClosure" o = GObject.Object.ObjectWatchClosureMethodInfo
ResolveDownloadMethod "getAllowOverwrite" o = DownloadGetAllowOverwriteMethodInfo
ResolveDownloadMethod "getData" o = GObject.Object.ObjectGetDataMethodInfo
ResolveDownloadMethod "getDestination" o = DownloadGetDestinationMethodInfo
ResolveDownloadMethod "getElapsedTime" o = DownloadGetElapsedTimeMethodInfo
ResolveDownloadMethod "getEstimatedProgress" o = DownloadGetEstimatedProgressMethodInfo
ResolveDownloadMethod "getProperty" o = GObject.Object.ObjectGetPropertyMethodInfo
ResolveDownloadMethod "getQdata" o = GObject.Object.ObjectGetQdataMethodInfo
ResolveDownloadMethod "getReceivedDataLength" o = DownloadGetReceivedDataLengthMethodInfo
ResolveDownloadMethod "getRequest" o = DownloadGetRequestMethodInfo
ResolveDownloadMethod "getResponse" o = DownloadGetResponseMethodInfo
ResolveDownloadMethod "getWebView" o = DownloadGetWebViewMethodInfo
ResolveDownloadMethod "setAllowOverwrite" o = DownloadSetAllowOverwriteMethodInfo
ResolveDownloadMethod "setData" o = GObject.Object.ObjectSetDataMethodInfo
ResolveDownloadMethod "setDestination" o = DownloadSetDestinationMethodInfo
ResolveDownloadMethod "setProperty" o = GObject.Object.ObjectSetPropertyMethodInfo
ResolveDownloadMethod l o = O.MethodResolutionFailed l o
instance (info ~ ResolveDownloadMethod t Download, O.MethodInfo info Download p) => OL.IsLabel t (Download -> 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
type DownloadCreatedDestinationCallback =
T.Text
-> IO ()
noDownloadCreatedDestinationCallback :: Maybe DownloadCreatedDestinationCallback
noDownloadCreatedDestinationCallback = Nothing
type C_DownloadCreatedDestinationCallback =
Ptr () ->
CString ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DownloadCreatedDestinationCallback :: C_DownloadCreatedDestinationCallback -> IO (FunPtr C_DownloadCreatedDestinationCallback)
genClosure_DownloadCreatedDestination :: MonadIO m => DownloadCreatedDestinationCallback -> m (GClosure C_DownloadCreatedDestinationCallback)
genClosure_DownloadCreatedDestination cb = liftIO $ do
let cb' = wrap_DownloadCreatedDestinationCallback cb
mk_DownloadCreatedDestinationCallback cb' >>= B.GClosure.newGClosure
wrap_DownloadCreatedDestinationCallback ::
DownloadCreatedDestinationCallback ->
C_DownloadCreatedDestinationCallback
wrap_DownloadCreatedDestinationCallback _cb _ destination _ = do
destination' <- cstringToText destination
_cb destination'
onDownloadCreatedDestination :: (IsDownload a, MonadIO m) => a -> DownloadCreatedDestinationCallback -> m SignalHandlerId
onDownloadCreatedDestination obj cb = liftIO $ do
let cb' = wrap_DownloadCreatedDestinationCallback cb
cb'' <- mk_DownloadCreatedDestinationCallback cb'
connectSignalFunPtr obj "created-destination" cb'' SignalConnectBefore
afterDownloadCreatedDestination :: (IsDownload a, MonadIO m) => a -> DownloadCreatedDestinationCallback -> m SignalHandlerId
afterDownloadCreatedDestination obj cb = liftIO $ do
let cb' = wrap_DownloadCreatedDestinationCallback cb
cb'' <- mk_DownloadCreatedDestinationCallback cb'
connectSignalFunPtr obj "created-destination" cb'' SignalConnectAfter
type DownloadDecideDestinationCallback =
T.Text
-> IO Bool
noDownloadDecideDestinationCallback :: Maybe DownloadDecideDestinationCallback
noDownloadDecideDestinationCallback = Nothing
type C_DownloadDecideDestinationCallback =
Ptr () ->
CString ->
Ptr () ->
IO CInt
foreign import ccall "wrapper"
mk_DownloadDecideDestinationCallback :: C_DownloadDecideDestinationCallback -> IO (FunPtr C_DownloadDecideDestinationCallback)
genClosure_DownloadDecideDestination :: MonadIO m => DownloadDecideDestinationCallback -> m (GClosure C_DownloadDecideDestinationCallback)
genClosure_DownloadDecideDestination cb = liftIO $ do
let cb' = wrap_DownloadDecideDestinationCallback cb
mk_DownloadDecideDestinationCallback cb' >>= B.GClosure.newGClosure
wrap_DownloadDecideDestinationCallback ::
DownloadDecideDestinationCallback ->
C_DownloadDecideDestinationCallback
wrap_DownloadDecideDestinationCallback _cb _ suggestedFilename _ = do
suggestedFilename' <- cstringToText suggestedFilename
result <- _cb suggestedFilename'
let result' = (fromIntegral . fromEnum) result
return result'
onDownloadDecideDestination :: (IsDownload a, MonadIO m) => a -> DownloadDecideDestinationCallback -> m SignalHandlerId
onDownloadDecideDestination obj cb = liftIO $ do
let cb' = wrap_DownloadDecideDestinationCallback cb
cb'' <- mk_DownloadDecideDestinationCallback cb'
connectSignalFunPtr obj "decide-destination" cb'' SignalConnectBefore
afterDownloadDecideDestination :: (IsDownload a, MonadIO m) => a -> DownloadDecideDestinationCallback -> m SignalHandlerId
afterDownloadDecideDestination obj cb = liftIO $ do
let cb' = wrap_DownloadDecideDestinationCallback cb
cb'' <- mk_DownloadDecideDestinationCallback cb'
connectSignalFunPtr obj "decide-destination" cb'' SignalConnectAfter
type DownloadFailedCallback =
GError
-> IO ()
noDownloadFailedCallback :: Maybe DownloadFailedCallback
noDownloadFailedCallback = Nothing
type C_DownloadFailedCallback =
Ptr () ->
Ptr GError ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DownloadFailedCallback :: C_DownloadFailedCallback -> IO (FunPtr C_DownloadFailedCallback)
genClosure_DownloadFailed :: MonadIO m => DownloadFailedCallback -> m (GClosure C_DownloadFailedCallback)
genClosure_DownloadFailed cb = liftIO $ do
let cb' = wrap_DownloadFailedCallback cb
mk_DownloadFailedCallback cb' >>= B.GClosure.newGClosure
wrap_DownloadFailedCallback ::
DownloadFailedCallback ->
C_DownloadFailedCallback
wrap_DownloadFailedCallback _cb _ error_ _ = do
error_' <- (newBoxed GError) error_
_cb error_'
onDownloadFailed :: (IsDownload a, MonadIO m) => a -> DownloadFailedCallback -> m SignalHandlerId
onDownloadFailed obj cb = liftIO $ do
let cb' = wrap_DownloadFailedCallback cb
cb'' <- mk_DownloadFailedCallback cb'
connectSignalFunPtr obj "failed" cb'' SignalConnectBefore
afterDownloadFailed :: (IsDownload a, MonadIO m) => a -> DownloadFailedCallback -> m SignalHandlerId
afterDownloadFailed obj cb = liftIO $ do
let cb' = wrap_DownloadFailedCallback cb
cb'' <- mk_DownloadFailedCallback cb'
connectSignalFunPtr obj "failed" cb'' SignalConnectAfter
type DownloadFinishedCallback =
IO ()
noDownloadFinishedCallback :: Maybe DownloadFinishedCallback
noDownloadFinishedCallback = Nothing
type C_DownloadFinishedCallback =
Ptr () ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DownloadFinishedCallback :: C_DownloadFinishedCallback -> IO (FunPtr C_DownloadFinishedCallback)
genClosure_DownloadFinished :: MonadIO m => DownloadFinishedCallback -> m (GClosure C_DownloadFinishedCallback)
genClosure_DownloadFinished cb = liftIO $ do
let cb' = wrap_DownloadFinishedCallback cb
mk_DownloadFinishedCallback cb' >>= B.GClosure.newGClosure
wrap_DownloadFinishedCallback ::
DownloadFinishedCallback ->
C_DownloadFinishedCallback
wrap_DownloadFinishedCallback _cb _ _ = do
_cb
onDownloadFinished :: (IsDownload a, MonadIO m) => a -> DownloadFinishedCallback -> m SignalHandlerId
onDownloadFinished obj cb = liftIO $ do
let cb' = wrap_DownloadFinishedCallback cb
cb'' <- mk_DownloadFinishedCallback cb'
connectSignalFunPtr obj "finished" cb'' SignalConnectBefore
afterDownloadFinished :: (IsDownload a, MonadIO m) => a -> DownloadFinishedCallback -> m SignalHandlerId
afterDownloadFinished obj cb = liftIO $ do
let cb' = wrap_DownloadFinishedCallback cb
cb'' <- mk_DownloadFinishedCallback cb'
connectSignalFunPtr obj "finished" cb'' SignalConnectAfter
type DownloadReceivedDataCallback =
Word64
-> IO ()
noDownloadReceivedDataCallback :: Maybe DownloadReceivedDataCallback
noDownloadReceivedDataCallback = Nothing
type C_DownloadReceivedDataCallback =
Ptr () ->
Word64 ->
Ptr () ->
IO ()
foreign import ccall "wrapper"
mk_DownloadReceivedDataCallback :: C_DownloadReceivedDataCallback -> IO (FunPtr C_DownloadReceivedDataCallback)
genClosure_DownloadReceivedData :: MonadIO m => DownloadReceivedDataCallback -> m (GClosure C_DownloadReceivedDataCallback)
genClosure_DownloadReceivedData cb = liftIO $ do
let cb' = wrap_DownloadReceivedDataCallback cb
mk_DownloadReceivedDataCallback cb' >>= B.GClosure.newGClosure
wrap_DownloadReceivedDataCallback ::
DownloadReceivedDataCallback ->
C_DownloadReceivedDataCallback
wrap_DownloadReceivedDataCallback _cb _ dataLength _ = do
_cb dataLength
onDownloadReceivedData :: (IsDownload a, MonadIO m) => a -> DownloadReceivedDataCallback -> m SignalHandlerId
onDownloadReceivedData obj cb = liftIO $ do
let cb' = wrap_DownloadReceivedDataCallback cb
cb'' <- mk_DownloadReceivedDataCallback cb'
connectSignalFunPtr obj "received-data" cb'' SignalConnectBefore
afterDownloadReceivedData :: (IsDownload a, MonadIO m) => a -> DownloadReceivedDataCallback -> m SignalHandlerId
afterDownloadReceivedData obj cb = liftIO $ do
let cb' = wrap_DownloadReceivedDataCallback cb
cb'' <- mk_DownloadReceivedDataCallback cb'
connectSignalFunPtr obj "received-data" cb'' SignalConnectAfter
getDownloadAllowOverwrite :: (MonadIO m, IsDownload o) => o -> m Bool
getDownloadAllowOverwrite obj = liftIO $ B.Properties.getObjectPropertyBool obj "allow-overwrite"
setDownloadAllowOverwrite :: (MonadIO m, IsDownload o) => o -> Bool -> m ()
setDownloadAllowOverwrite obj val = liftIO $ B.Properties.setObjectPropertyBool obj "allow-overwrite" val
constructDownloadAllowOverwrite :: (IsDownload o) => Bool -> IO (GValueConstruct o)
constructDownloadAllowOverwrite val = B.Properties.constructObjectPropertyBool "allow-overwrite" val
#if ENABLE_OVERLOADING
data DownloadAllowOverwritePropertyInfo
instance AttrInfo DownloadAllowOverwritePropertyInfo where
type AttrAllowedOps DownloadAllowOverwritePropertyInfo = '[ 'AttrSet, 'AttrConstruct, 'AttrGet]
type AttrSetTypeConstraint DownloadAllowOverwritePropertyInfo = (~) Bool
type AttrBaseTypeConstraint DownloadAllowOverwritePropertyInfo = IsDownload
type AttrGetType DownloadAllowOverwritePropertyInfo = Bool
type AttrLabel DownloadAllowOverwritePropertyInfo = "allow-overwrite"
type AttrOrigin DownloadAllowOverwritePropertyInfo = Download
attrGet _ = getDownloadAllowOverwrite
attrSet _ = setDownloadAllowOverwrite
attrConstruct _ = constructDownloadAllowOverwrite
attrClear _ = undefined
#endif
getDownloadDestination :: (MonadIO m, IsDownload o) => o -> m (Maybe T.Text)
getDownloadDestination obj = liftIO $ B.Properties.getObjectPropertyString obj "destination"
#if ENABLE_OVERLOADING
data DownloadDestinationPropertyInfo
instance AttrInfo DownloadDestinationPropertyInfo where
type AttrAllowedOps DownloadDestinationPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint DownloadDestinationPropertyInfo = (~) ()
type AttrBaseTypeConstraint DownloadDestinationPropertyInfo = IsDownload
type AttrGetType DownloadDestinationPropertyInfo = (Maybe T.Text)
type AttrLabel DownloadDestinationPropertyInfo = "destination"
type AttrOrigin DownloadDestinationPropertyInfo = Download
attrGet _ = getDownloadDestination
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
getDownloadEstimatedProgress :: (MonadIO m, IsDownload o) => o -> m Double
getDownloadEstimatedProgress obj = liftIO $ B.Properties.getObjectPropertyDouble obj "estimated-progress"
#if ENABLE_OVERLOADING
data DownloadEstimatedProgressPropertyInfo
instance AttrInfo DownloadEstimatedProgressPropertyInfo where
type AttrAllowedOps DownloadEstimatedProgressPropertyInfo = '[ 'AttrGet]
type AttrSetTypeConstraint DownloadEstimatedProgressPropertyInfo = (~) ()
type AttrBaseTypeConstraint DownloadEstimatedProgressPropertyInfo = IsDownload
type AttrGetType DownloadEstimatedProgressPropertyInfo = Double
type AttrLabel DownloadEstimatedProgressPropertyInfo = "estimated-progress"
type AttrOrigin DownloadEstimatedProgressPropertyInfo = Download
attrGet _ = getDownloadEstimatedProgress
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
getDownloadResponse :: (MonadIO m, IsDownload o) => o -> m (Maybe WebKit2.URIResponse.URIResponse)
getDownloadResponse obj = liftIO $ B.Properties.getObjectPropertyObject obj "response" WebKit2.URIResponse.URIResponse
#if ENABLE_OVERLOADING
data DownloadResponsePropertyInfo
instance AttrInfo DownloadResponsePropertyInfo where
type AttrAllowedOps DownloadResponsePropertyInfo = '[ 'AttrGet, 'AttrClear]
type AttrSetTypeConstraint DownloadResponsePropertyInfo = (~) ()
type AttrBaseTypeConstraint DownloadResponsePropertyInfo = IsDownload
type AttrGetType DownloadResponsePropertyInfo = (Maybe WebKit2.URIResponse.URIResponse)
type AttrLabel DownloadResponsePropertyInfo = "response"
type AttrOrigin DownloadResponsePropertyInfo = Download
attrGet _ = getDownloadResponse
attrSet _ = undefined
attrConstruct _ = undefined
attrClear _ = undefined
#endif
#if ENABLE_OVERLOADING
instance O.HasAttributeList Download
type instance O.AttributeList Download = DownloadAttributeList
type DownloadAttributeList = ('[ '("allowOverwrite", DownloadAllowOverwritePropertyInfo), '("destination", DownloadDestinationPropertyInfo), '("estimatedProgress", DownloadEstimatedProgressPropertyInfo), '("response", DownloadResponsePropertyInfo)] :: [(Symbol, *)])
#endif
#if ENABLE_OVERLOADING
downloadAllowOverwrite :: AttrLabelProxy "allowOverwrite"
downloadAllowOverwrite = AttrLabelProxy
downloadDestination :: AttrLabelProxy "destination"
downloadDestination = AttrLabelProxy
downloadEstimatedProgress :: AttrLabelProxy "estimatedProgress"
downloadEstimatedProgress = AttrLabelProxy
downloadResponse :: AttrLabelProxy "response"
downloadResponse = AttrLabelProxy
#endif
#if ENABLE_OVERLOADING
data DownloadCreatedDestinationSignalInfo
instance SignalInfo DownloadCreatedDestinationSignalInfo where
type HaskellCallbackType DownloadCreatedDestinationSignalInfo = DownloadCreatedDestinationCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_DownloadCreatedDestinationCallback cb
cb'' <- mk_DownloadCreatedDestinationCallback cb'
connectSignalFunPtr obj "created-destination" cb'' connectMode
data DownloadDecideDestinationSignalInfo
instance SignalInfo DownloadDecideDestinationSignalInfo where
type HaskellCallbackType DownloadDecideDestinationSignalInfo = DownloadDecideDestinationCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_DownloadDecideDestinationCallback cb
cb'' <- mk_DownloadDecideDestinationCallback cb'
connectSignalFunPtr obj "decide-destination" cb'' connectMode
data DownloadFailedSignalInfo
instance SignalInfo DownloadFailedSignalInfo where
type HaskellCallbackType DownloadFailedSignalInfo = DownloadFailedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_DownloadFailedCallback cb
cb'' <- mk_DownloadFailedCallback cb'
connectSignalFunPtr obj "failed" cb'' connectMode
data DownloadFinishedSignalInfo
instance SignalInfo DownloadFinishedSignalInfo where
type HaskellCallbackType DownloadFinishedSignalInfo = DownloadFinishedCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_DownloadFinishedCallback cb
cb'' <- mk_DownloadFinishedCallback cb'
connectSignalFunPtr obj "finished" cb'' connectMode
data DownloadReceivedDataSignalInfo
instance SignalInfo DownloadReceivedDataSignalInfo where
type HaskellCallbackType DownloadReceivedDataSignalInfo = DownloadReceivedDataCallback
connectSignal _ obj cb connectMode = do
let cb' = wrap_DownloadReceivedDataCallback cb
cb'' <- mk_DownloadReceivedDataCallback cb'
connectSignalFunPtr obj "received-data" cb'' connectMode
type instance O.SignalList Download = DownloadSignalList
type DownloadSignalList = ('[ '("createdDestination", DownloadCreatedDestinationSignalInfo), '("decideDestination", DownloadDecideDestinationSignalInfo), '("failed", DownloadFailedSignalInfo), '("finished", DownloadFinishedSignalInfo), '("notify", GObject.Object.ObjectNotifySignalInfo), '("receivedData", DownloadReceivedDataSignalInfo)] :: [(Symbol, *)])
#endif
foreign import ccall "webkit_download_cancel" webkit_download_cancel ::
Ptr Download ->
IO ()
downloadCancel ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m ()
downloadCancel download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
webkit_download_cancel download'
touchManagedPtr download
return ()
#if ENABLE_OVERLOADING
data DownloadCancelMethodInfo
instance (signature ~ (m ()), MonadIO m, IsDownload a) => O.MethodInfo DownloadCancelMethodInfo a signature where
overloadedMethod _ = downloadCancel
#endif
foreign import ccall "webkit_download_get_allow_overwrite" webkit_download_get_allow_overwrite ::
Ptr Download ->
IO CInt
downloadGetAllowOverwrite ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m Bool
downloadGetAllowOverwrite download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_allow_overwrite download'
let result' = (/= 0) result
touchManagedPtr download
return result'
#if ENABLE_OVERLOADING
data DownloadGetAllowOverwriteMethodInfo
instance (signature ~ (m Bool), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetAllowOverwriteMethodInfo a signature where
overloadedMethod _ = downloadGetAllowOverwrite
#endif
foreign import ccall "webkit_download_get_destination" webkit_download_get_destination ::
Ptr Download ->
IO CString
downloadGetDestination ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m (Maybe T.Text)
downloadGetDestination download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_destination download'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- cstringToText result'
return result''
touchManagedPtr download
return maybeResult
#if ENABLE_OVERLOADING
data DownloadGetDestinationMethodInfo
instance (signature ~ (m (Maybe T.Text)), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetDestinationMethodInfo a signature where
overloadedMethod _ = downloadGetDestination
#endif
foreign import ccall "webkit_download_get_elapsed_time" webkit_download_get_elapsed_time ::
Ptr Download ->
IO CDouble
downloadGetElapsedTime ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m Double
downloadGetElapsedTime download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_elapsed_time download'
let result' = realToFrac result
touchManagedPtr download
return result'
#if ENABLE_OVERLOADING
data DownloadGetElapsedTimeMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetElapsedTimeMethodInfo a signature where
overloadedMethod _ = downloadGetElapsedTime
#endif
foreign import ccall "webkit_download_get_estimated_progress" webkit_download_get_estimated_progress ::
Ptr Download ->
IO CDouble
downloadGetEstimatedProgress ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m Double
downloadGetEstimatedProgress download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_estimated_progress download'
let result' = realToFrac result
touchManagedPtr download
return result'
#if ENABLE_OVERLOADING
data DownloadGetEstimatedProgressMethodInfo
instance (signature ~ (m Double), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetEstimatedProgressMethodInfo a signature where
overloadedMethod _ = downloadGetEstimatedProgress
#endif
foreign import ccall "webkit_download_get_received_data_length" webkit_download_get_received_data_length ::
Ptr Download ->
IO Word64
downloadGetReceivedDataLength ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m Word64
downloadGetReceivedDataLength download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_received_data_length download'
touchManagedPtr download
return result
#if ENABLE_OVERLOADING
data DownloadGetReceivedDataLengthMethodInfo
instance (signature ~ (m Word64), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetReceivedDataLengthMethodInfo a signature where
overloadedMethod _ = downloadGetReceivedDataLength
#endif
foreign import ccall "webkit_download_get_request" webkit_download_get_request ::
Ptr Download ->
IO (Ptr WebKit2.URIRequest.URIRequest)
downloadGetRequest ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m WebKit2.URIRequest.URIRequest
downloadGetRequest download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_request download'
checkUnexpectedReturnNULL "downloadGetRequest" result
result' <- (newObject WebKit2.URIRequest.URIRequest) result
touchManagedPtr download
return result'
#if ENABLE_OVERLOADING
data DownloadGetRequestMethodInfo
instance (signature ~ (m WebKit2.URIRequest.URIRequest), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetRequestMethodInfo a signature where
overloadedMethod _ = downloadGetRequest
#endif
foreign import ccall "webkit_download_get_response" webkit_download_get_response ::
Ptr Download ->
IO (Ptr WebKit2.URIResponse.URIResponse)
downloadGetResponse ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m (Maybe WebKit2.URIResponse.URIResponse)
downloadGetResponse download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_response download'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newObject WebKit2.URIResponse.URIResponse) result'
return result''
touchManagedPtr download
return maybeResult
#if ENABLE_OVERLOADING
data DownloadGetResponseMethodInfo
instance (signature ~ (m (Maybe WebKit2.URIResponse.URIResponse)), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetResponseMethodInfo a signature where
overloadedMethod _ = downloadGetResponse
#endif
foreign import ccall "webkit_download_get_web_view" webkit_download_get_web_view ::
Ptr Download ->
IO (Ptr WebKit2.WebView.WebView)
downloadGetWebView ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> m (Maybe WebKit2.WebView.WebView)
downloadGetWebView download = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
result <- webkit_download_get_web_view download'
maybeResult <- convertIfNonNull result $ \result' -> do
result'' <- (newObject WebKit2.WebView.WebView) result'
return result''
touchManagedPtr download
return maybeResult
#if ENABLE_OVERLOADING
data DownloadGetWebViewMethodInfo
instance (signature ~ (m (Maybe WebKit2.WebView.WebView)), MonadIO m, IsDownload a) => O.MethodInfo DownloadGetWebViewMethodInfo a signature where
overloadedMethod _ = downloadGetWebView
#endif
foreign import ccall "webkit_download_set_allow_overwrite" webkit_download_set_allow_overwrite ::
Ptr Download ->
CInt ->
IO ()
downloadSetAllowOverwrite ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> Bool
-> m ()
downloadSetAllowOverwrite download allowed = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
let allowed' = (fromIntegral . fromEnum) allowed
webkit_download_set_allow_overwrite download' allowed'
touchManagedPtr download
return ()
#if ENABLE_OVERLOADING
data DownloadSetAllowOverwriteMethodInfo
instance (signature ~ (Bool -> m ()), MonadIO m, IsDownload a) => O.MethodInfo DownloadSetAllowOverwriteMethodInfo a signature where
overloadedMethod _ = downloadSetAllowOverwrite
#endif
foreign import ccall "webkit_download_set_destination" webkit_download_set_destination ::
Ptr Download ->
CString ->
IO ()
downloadSetDestination ::
(B.CallStack.HasCallStack, MonadIO m, IsDownload a) =>
a
-> T.Text
-> m ()
downloadSetDestination download uri = liftIO $ do
download' <- unsafeManagedPtrCastPtr download
uri' <- textToCString uri
webkit_download_set_destination download' uri'
touchManagedPtr download
freeMem uri'
return ()
#if ENABLE_OVERLOADING
data DownloadSetDestinationMethodInfo
instance (signature ~ (T.Text -> m ()), MonadIO m, IsDownload a) => O.MethodInfo DownloadSetDestinationMethodInfo a signature where
overloadedMethod _ = downloadSetDestination
#endif