### Method

# Secret Prompt perform

#### Declaration [src]

    void
    secret_prompt_perform (
      SecretPrompt* self,
      const gchar* window_id,
      const GVariantType* return_type,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer user_data
    )

#### Description [src]

Runs a prompt and performs the prompting.

Returns `TRUE` if the prompt was completed and not dismissed.

If `window_id` is non-null then it is used as an XWindow id on Linux. The API expects this id to be converted to a string using the `%d` printf format. The Secret Service can make its prompt transient for the window with this id. In some Secret Service implementations this is not possible, so the behavior depending on this should degrade gracefully.

This method will return immediately and complete asynchronously.

This method completes asynchronously. Use `secret_prompt_perform_finish()` inside the `GAsyncReadyCallback` to obtain the result of the operation.

#### Parameters

`window_id`

  Type: `const gchar*`

  String form of XWindow id for parent window to be transient for.

  The argument can be `NULL`.
  The data is owned by the caller of the method.
  The value is a NUL terminated UTF-8 string.

`return_type`

  Type: `GVariantType`

  The variant type of the prompt result.

  The data is owned by the caller of the method.

`cancellable`

  Type: `GCancellable`

  Optional cancellation object.

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

`callback`

  Type: `GAsyncReadyCallback`

  Called when the operation completes.

  The argument can be `NULL`.

`user_data`

  Type: `gpointer`

  Data to be passed to the callback.

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