Class: Secret::Prompt

Inherits:
Gio::DBusProxy
  • Object
show all
Defined in:
(unknown)

Overview

The class for Secret::Prompt.

Instance Method Summary collapse

Instance Method Details

#perform(window_id, return_type, cancellable, callback, user_data) ⇒ nil

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.

Parameters:

  • window_id (String)

    string form of XWindow id for parent window to be transient for

  • return_type (GLib::VariantType)

    the variant type of the prompt result

  • cancellable (Gio::Cancellable)

    optional cancellation object

  • callback (Gio::AsyncReadyCallback)

    called when the operation completes

  • user_data (GObject)

    data to be passed to the callback

Returns:

  • (nil)

#perform_finish(result) ⇒ GLib::Variant

Complete asynchronous operation to run a prompt and perform the prompting.

Returns a variant result if the prompt was completed and not dismissed. The type of result depends on the action the prompt is completing, and is defined in the Secret Service DBus API specification.

Parameters:

  • result (Gio::AsyncResult)

    the asynchronous result passed to the callback

Returns:

  • (GLib::Variant)

    nil if the prompt was dismissed or an error occurred, a variant result if the prompt was successful

#perform_sync(window_id, cancellable, return_type) ⇒ GLib::Variant

Runs a prompt and performs the prompting.

Returns a variant result if the prompt was completed and not dismissed. The type of result depends on the action the prompt is completing, and is defined in the Secret Service DBus API specification.

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 may block indefinitely and should not be used in user interface threads.

Parameters:

  • window_id (String)

    string form of XWindow id for parent window to be transient for

  • cancellable (Gio::Cancellable)

    optional cancellation object

  • return_type (GLib::VariantType)

    the variant type of the prompt result

Returns:

  • (GLib::Variant)

    nil if the prompt was dismissed or an error occurred

#run(window_id, cancellable, return_type) ⇒ GLib::Variant

Runs a prompt and performs the prompting.

Returns a variant result if the prompt was completed and not dismissed. The type of result depends on the action the prompt is completing, and is defined in the Secret Service DBus API specification.

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 runs the dialog in a recursive mainloop. When run from a user interface thread, this means the user interface will remain responsive. Care should be taken that appropriate user interface actions are disabled while running the prompt.

Parameters:

  • window_id (String)

    string form of XWindow id for parent window to be transient for

  • cancellable (Gio::Cancellable)

    optional cancellation object

  • return_type (GLib::VariantType)

    the variant type of the prompt result

Returns:

  • (GLib::Variant)

    nil if the prompt was dismissed or an error occurred