Xdp.Portal.session_inhibit

### Method

# Xdp Portalsession_inhibit

#### Declaration [src]

    void
    xdp_portal_session_inhibit (
      XdpPortal* portal,
      XdpParent* parent,
      const char* reason,
      XdpInhibitFlags flags,
      GCancellable* cancellable,
      GAsyncReadyCallback callback,
      gpointer data
    )

#### Description [src]

Inhibits various session status changes.

To obtain an ID that can be used to undo the inhibition, use `xdp_portal_session_inhibit_finish()` in the callback.

To remove an active inhibitor, call `xdp_portal_session_uninhibit()` with the same ID.

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

#### Parameters

`parent`

  Type: `XdpParent`

  Parent window information.

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

`reason`

  Type: `const char*`

  User-visible reason for the inhibition.

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

`flags`

  Type: `XdpInhibitFlags`

  Information about what to inhibit.

`cancellable`

  Type: `GCancellable`

  Optional `GCancellable`.

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

`callback`

  Type: `GAsyncReadyCallback`

  A callback to call when the request is done.

  The argument can be `NULL`.

`data`

  Type: `gpointer`

  Data to pass to `callback`.

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