### Function

# Dex file_copy_with_progress

unstable since: 1.2

#### Declaration [src]

    DexFuture*
    dex_file_copy_with_progress (
      GFile* source,
      GFile* destination,
      GFileCopyFlags flags,
      int io_priority,
      GFileProgressCallback progress_callback,
      gpointer progress_callback_data,
      GDestroyNotify progress_callback_data_destroy
    )

#### Description [src]

Wraps `g_file_copy_async()` with progress callback support.

Available since: 1.2

#### Parameters

`source`

  Type: `GFile`

  Source `GFile`.

  The data is owned by the caller of the function.

`destination`

  Type: `GFile`

  Destination `GFile`.

  The data is owned by the caller of the function.

`flags`

  Type: `GFileCopyFlags`

  A set of `GFileCopyFlags`.

`io_priority`

  Type: `int`

  The IO priority of the request.

`progress_callback`

  Type: `GFileProgressCallback`

  `GFileProgressCallback` function for updates.

  The argument can be `NULL`.

`progress_callback_data`

  Type: `gpointer`

  `gpointer` to user data for the callback function.

  The argument can be `NULL`.
  The data is owned by the caller of the function.

`progress_callback_data_destroy`

  Type: `GDestroyNotify`

  A function to destroy the `progress_callback_data`, or `NULL`.

  The argument can be `NULL`.

#### Return value

Type: `DexFuture`

A `DexFuture` that resolves to `TRUE` or rejects with error.

The caller of the function takes ownership of the data, and is responsible for freeing it.