Description [src]

final class Xdp.InputCaptureSession : GObject.Object {
  /* No available fields */

A representation of a long-lived input capture portal interaction.

The XdpInputCaptureSession object is used to represent portal interactions with the input capture desktop portal that extend over multiple portal calls. Usually a caller creates an input capture session, requests the available zones and sets up pointer barriers on those zones before enabling the session.

To find available zones, call xdp_input_capture_session_get_zones(). These XdpInputCaptureZone object represent the accessible desktop area for input capturing. XdpInputCapturePointerBarrier objects can be set up on these zones to trigger input capture.

The XdpInputCaptureSession wraps a XdpSession object.


Instance methods


Connect this session to an EIS implementation and return the fd. This fd can be passed into ei_setup_backend_fd(). See the libei documentation for details.


Disables this input capture session.


Enables this input capture session. In the future, this client may receive input events.


Return the XdpSession for this InputCapture session.


Obtains the current set of XdpInputCaptureZone objects.


Releases this input capture session without a suggested cursor position.


Releases this input capture session with a suggested cursor position. Note that the implementation is not required to honour this position.


Sets the pointer barriers for this session. When the request is done, callback will be called. You can then call xdp_input_capture_session_set_pointer_barriers_finish() to get the results. The result of this request is the list of pointer barriers that failed to apply - barriers not present in the returned list are active.


Finishes the set-pointer-barriers request, and returns a GList with the pointer barriers that failed to apply and should be cleaned up by the caller.

Methods inherited from GObject (43)

Please see GObject for a full list of methods.



Emitted when an InputCapture session activates and sends events. When this signal is emitted, events will appear on the transport layer.


Emitted when an InputCapture session deactivates and no longer sends events.


Emitted when an InputCapture session is disabled. This signal is emitted when capturing was disabled by the server.


Emitted when an InputCapture session’s zones have changed. When this signal is emitted, all current zones will have their XdpInputCaptureZone:is-valid property set to FALSE and all internal references to those zones have been released. This signal is sent after libportal has fetched the updated zones, a caller should call xdp_input_capture_session_get_zones() to retrieve the new zones.

Signals inherited from GObject (1)

The notify signal is emitted on an object when one of its properties has its value set through g_object_set_property(), g_object_set(), et al.

Class structure

struct XdpInputCaptureSessionClass {
  GObjectClass parent_class;
No description available.
Class members
parent_class: GObjectClass
No description available.