Copyright | Will Thompson Iñaki García Etxebarria and Jonas Platte |
---|---|
License | LGPL-2.1 |
Maintainer | Iñaki García Etxebarria (garetxe@gmail.com) |
Safe Haskell | None |
Language | Haskell2010 |
- newtype Download = Download (ManagedPtr Download)
- class GObject o => IsDownload o
- toDownload :: (MonadIO m, IsDownload o) => o -> m Download
- noDownload :: Maybe Download
- downloadCancel :: (HasCallStack, MonadIO m, IsDownload a) => a -> m ()
- downloadGetAllowOverwrite :: (HasCallStack, MonadIO m, IsDownload a) => a -> m Bool
- downloadGetDestination :: (HasCallStack, MonadIO m, IsDownload a) => a -> m Text
- downloadGetElapsedTime :: (HasCallStack, MonadIO m, IsDownload a) => a -> m Double
- downloadGetEstimatedProgress :: (HasCallStack, MonadIO m, IsDownload a) => a -> m Double
- downloadGetReceivedDataLength :: (HasCallStack, MonadIO m, IsDownload a) => a -> m Word64
- downloadGetRequest :: (HasCallStack, MonadIO m, IsDownload a) => a -> m URIRequest
- downloadGetResponse :: (HasCallStack, MonadIO m, IsDownload a) => a -> m URIResponse
- downloadGetWebView :: (HasCallStack, MonadIO m, IsDownload a) => a -> m WebView
- downloadSetAllowOverwrite :: (HasCallStack, MonadIO m, IsDownload a) => a -> Bool -> m ()
- downloadSetDestination :: (HasCallStack, MonadIO m, IsDownload a) => a -> Text -> m ()
- constructDownloadAllowOverwrite :: IsDownload o => Bool -> IO (GValueConstruct o)
- getDownloadAllowOverwrite :: (MonadIO m, IsDownload o) => o -> m Bool
- setDownloadAllowOverwrite :: (MonadIO m, IsDownload o) => o -> Bool -> m ()
- getDownloadDestination :: (MonadIO m, IsDownload o) => o -> m Text
- getDownloadEstimatedProgress :: (MonadIO m, IsDownload o) => o -> m Double
- getDownloadResponse :: (MonadIO m, IsDownload o) => o -> m URIResponse
- type C_DownloadCreatedDestinationCallback = Ptr () -> CString -> Ptr () -> IO ()
- type DownloadCreatedDestinationCallback = Text -> IO ()
- afterDownloadCreatedDestination :: (IsDownload a, MonadIO m) => a -> DownloadCreatedDestinationCallback -> m SignalHandlerId
- genClosure_DownloadCreatedDestination :: DownloadCreatedDestinationCallback -> IO Closure
- mk_DownloadCreatedDestinationCallback :: C_DownloadCreatedDestinationCallback -> IO (FunPtr C_DownloadCreatedDestinationCallback)
- noDownloadCreatedDestinationCallback :: Maybe DownloadCreatedDestinationCallback
- onDownloadCreatedDestination :: (IsDownload a, MonadIO m) => a -> DownloadCreatedDestinationCallback -> m SignalHandlerId
- wrap_DownloadCreatedDestinationCallback :: DownloadCreatedDestinationCallback -> Ptr () -> CString -> Ptr () -> IO ()
- type C_DownloadDecideDestinationCallback = Ptr () -> CString -> Ptr () -> IO CInt
- type DownloadDecideDestinationCallback = Text -> IO Bool
- afterDownloadDecideDestination :: (IsDownload a, MonadIO m) => a -> DownloadDecideDestinationCallback -> m SignalHandlerId
- genClosure_DownloadDecideDestination :: DownloadDecideDestinationCallback -> IO Closure
- mk_DownloadDecideDestinationCallback :: C_DownloadDecideDestinationCallback -> IO (FunPtr C_DownloadDecideDestinationCallback)
- noDownloadDecideDestinationCallback :: Maybe DownloadDecideDestinationCallback
- onDownloadDecideDestination :: (IsDownload a, MonadIO m) => a -> DownloadDecideDestinationCallback -> m SignalHandlerId
- wrap_DownloadDecideDestinationCallback :: DownloadDecideDestinationCallback -> Ptr () -> CString -> Ptr () -> IO CInt
- type C_DownloadFailedCallback = Ptr () -> Ptr GError -> Ptr () -> IO ()
- type DownloadFailedCallback = GError -> IO ()
- afterDownloadFailed :: (IsDownload a, MonadIO m) => a -> DownloadFailedCallback -> m SignalHandlerId
- genClosure_DownloadFailed :: DownloadFailedCallback -> IO Closure
- mk_DownloadFailedCallback :: C_DownloadFailedCallback -> IO (FunPtr C_DownloadFailedCallback)
- noDownloadFailedCallback :: Maybe DownloadFailedCallback
- onDownloadFailed :: (IsDownload a, MonadIO m) => a -> DownloadFailedCallback -> m SignalHandlerId
- wrap_DownloadFailedCallback :: DownloadFailedCallback -> Ptr () -> Ptr GError -> Ptr () -> IO ()
- type C_DownloadFinishedCallback = Ptr () -> Ptr () -> IO ()
- type DownloadFinishedCallback = IO ()
- afterDownloadFinished :: (IsDownload a, MonadIO m) => a -> DownloadFinishedCallback -> m SignalHandlerId
- genClosure_DownloadFinished :: DownloadFinishedCallback -> IO Closure
- mk_DownloadFinishedCallback :: C_DownloadFinishedCallback -> IO (FunPtr C_DownloadFinishedCallback)
- noDownloadFinishedCallback :: Maybe DownloadFinishedCallback
- onDownloadFinished :: (IsDownload a, MonadIO m) => a -> DownloadFinishedCallback -> m SignalHandlerId
- wrap_DownloadFinishedCallback :: DownloadFinishedCallback -> Ptr () -> Ptr () -> IO ()
- type C_DownloadReceivedDataCallback = Ptr () -> Word64 -> Ptr () -> IO ()
- type DownloadReceivedDataCallback = Word64 -> IO ()
- afterDownloadReceivedData :: (IsDownload a, MonadIO m) => a -> DownloadReceivedDataCallback -> m SignalHandlerId
- genClosure_DownloadReceivedData :: DownloadReceivedDataCallback -> IO Closure
- mk_DownloadReceivedDataCallback :: C_DownloadReceivedDataCallback -> IO (FunPtr C_DownloadReceivedDataCallback)
- noDownloadReceivedDataCallback :: Maybe DownloadReceivedDataCallback
- onDownloadReceivedData :: (IsDownload a, MonadIO m) => a -> DownloadReceivedDataCallback -> m SignalHandlerId
- wrap_DownloadReceivedDataCallback :: DownloadReceivedDataCallback -> Ptr () -> Word64 -> Ptr () -> IO ()
Exported types
class GObject o => IsDownload o Source #
(GObject a, UnknownAncestorError Constraint Download a) => IsDownload a Source # | |
IsDownload Download Source # | |
toDownload :: (MonadIO m, IsDownload o) => o -> m Download Source #
Methods
cancel
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m () |
Cancels the download. When the ongoing download
operation is effectively cancelled the signal
Download
::failed
is emitted with
DownloadErrorCancelledByUser
error.
getAllowOverwrite
downloadGetAllowOverwrite Source #
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m Bool | Returns: the current value of the |
Returns the current value of the Download
:allow-overwrite
property,
which determines whether the download will overwrite an existing file on
disk, or if it will fail if the destination already exists.
Since: 2.6
getDestination
downloadGetDestination Source #
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m Text | Returns: the destination URI or |
Obtains the URI to which the downloaded file will be written. You
can connect to Download
::created-destination
to make
sure this method returns a valid destination.
getElapsedTime
downloadGetElapsedTime Source #
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m Double | Returns: seconds since the download was started |
Gets the elapsed time in seconds, including any fractional part. If the download finished, had an error or was cancelled this is the time between its start and the event.
getEstimatedProgress
downloadGetEstimatedProgress Source #
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m Double | Returns: an estimate of the of the percent complete for a download as a range from 0.0 to 1.0. |
Gets the value of the Download
:estimated-progress
property.
You can monitor the estimated progress of the download operation by
connecting to the notify::estimated-progress signal of download
.
getReceivedDataLength
downloadGetReceivedDataLength Source #
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m Word64 | Returns: the amount of bytes already downloaded. |
Gets the length of the data already downloaded for download
in bytes.
getRequest
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m URIRequest | Returns: the |
Retrieves the URIRequest
object that backs the download
process.
getResponse
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m URIResponse | Returns: the |
Retrieves the URIResponse
object that backs the download
process. This method returns Nothing
if called before the response
is received from the server. You can connect to notify::response
signal to be notified when the response is received.
getWebView
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> m WebView | Returns: the |
Get the WebView
that initiated the download.
setAllowOverwrite
downloadSetAllowOverwrite Source #
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> Bool |
|
-> m () |
Sets the Download
:allow-overwrite
property, which determines whether
the download may overwrite an existing file on disk, or if it will fail if
the destination already exists.
Since: 2.6
setDestination
downloadSetDestination Source #
:: (HasCallStack, MonadIO m, IsDownload a) | |
=> a |
|
-> Text |
|
-> m () |
Sets the URI to which the downloaded file will be written.
This method should be called before the download transfer
starts or it will not have any effect on the ongoing download
operation. To set the destination using the filename suggested
by the server connect to Download
::decide-destination
signal and call downloadSetDestination
. If you want to
set a fixed destination URI that doesn't depend on the suggested
filename you can connect to notify::response signal and call
downloadSetDestination
.
If Download
::decide-destination
signal is not handled
and destination URI is not set when the download tranfer starts,
the file will be saved with the filename suggested by the server in
UserDirectoryDirectoryDownload
directory.
Properties
allowOverwrite
constructDownloadAllowOverwrite :: IsDownload o => Bool -> IO (GValueConstruct o) Source #
getDownloadAllowOverwrite :: (MonadIO m, IsDownload o) => o -> m Bool Source #
setDownloadAllowOverwrite :: (MonadIO m, IsDownload o) => o -> Bool -> m () Source #
destination
getDownloadDestination :: (MonadIO m, IsDownload o) => o -> m Text Source #
estimatedProgress
getDownloadEstimatedProgress :: (MonadIO m, IsDownload o) => o -> m Double Source #
response
getDownloadResponse :: (MonadIO m, IsDownload o) => o -> m URIResponse Source #
Signals
createdDestination
type DownloadCreatedDestinationCallback = Text -> IO () Source #
afterDownloadCreatedDestination :: (IsDownload a, MonadIO m) => a -> DownloadCreatedDestinationCallback -> m SignalHandlerId Source #
mk_DownloadCreatedDestinationCallback :: C_DownloadCreatedDestinationCallback -> IO (FunPtr C_DownloadCreatedDestinationCallback) Source #
onDownloadCreatedDestination :: (IsDownload a, MonadIO m) => a -> DownloadCreatedDestinationCallback -> m SignalHandlerId Source #
wrap_DownloadCreatedDestinationCallback :: DownloadCreatedDestinationCallback -> Ptr () -> CString -> Ptr () -> IO () Source #
decideDestination
afterDownloadDecideDestination :: (IsDownload a, MonadIO m) => a -> DownloadDecideDestinationCallback -> m SignalHandlerId Source #
mk_DownloadDecideDestinationCallback :: C_DownloadDecideDestinationCallback -> IO (FunPtr C_DownloadDecideDestinationCallback) Source #
onDownloadDecideDestination :: (IsDownload a, MonadIO m) => a -> DownloadDecideDestinationCallback -> m SignalHandlerId Source #
wrap_DownloadDecideDestinationCallback :: DownloadDecideDestinationCallback -> Ptr () -> CString -> Ptr () -> IO CInt Source #
failed
type DownloadFailedCallback = GError -> IO () Source #
afterDownloadFailed :: (IsDownload a, MonadIO m) => a -> DownloadFailedCallback -> m SignalHandlerId Source #
mk_DownloadFailedCallback :: C_DownloadFailedCallback -> IO (FunPtr C_DownloadFailedCallback) Source #
onDownloadFailed :: (IsDownload a, MonadIO m) => a -> DownloadFailedCallback -> m SignalHandlerId Source #
wrap_DownloadFailedCallback :: DownloadFailedCallback -> Ptr () -> Ptr GError -> Ptr () -> IO () Source #
finished
type DownloadFinishedCallback = IO () Source #
afterDownloadFinished :: (IsDownload a, MonadIO m) => a -> DownloadFinishedCallback -> m SignalHandlerId Source #
mk_DownloadFinishedCallback :: C_DownloadFinishedCallback -> IO (FunPtr C_DownloadFinishedCallback) Source #
onDownloadFinished :: (IsDownload a, MonadIO m) => a -> DownloadFinishedCallback -> m SignalHandlerId Source #
wrap_DownloadFinishedCallback :: DownloadFinishedCallback -> Ptr () -> Ptr () -> IO () Source #
receivedData
type DownloadReceivedDataCallback = Word64 -> IO () Source #
afterDownloadReceivedData :: (IsDownload a, MonadIO m) => a -> DownloadReceivedDataCallback -> m SignalHandlerId Source #
mk_DownloadReceivedDataCallback :: C_DownloadReceivedDataCallback -> IO (FunPtr C_DownloadReceivedDataCallback) Source #
onDownloadReceivedData :: (IsDownload a, MonadIO m) => a -> DownloadReceivedDataCallback -> m SignalHandlerId Source #
wrap_DownloadReceivedDataCallback :: DownloadReceivedDataCallback -> Ptr () -> Word64 -> Ptr () -> IO () Source #