Interface

GioRemoteActionGroup

since: 2.32

Description

interface Gio.RemoteActionGroup : Gio.ActionGroup

The GRemoteActionGroup interface is implemented by GActionGroup instances that either transmit action invocations to other processes or receive action invocations in the local process from other processes.

The interface has _full variants of the two methods on GActionGroup used to activate actions: g_action_group_activate_action() and g_action_group_change_action_state(). These variants allow a ‘platform data’ GVariant to be specified: a dictionary providing context for the action invocation (for example: timestamps, startup notification IDs, etc).

GDBusActionGroup implements GRemoteActionGroup. This provides a mechanism to send platform data for action invocations over D-Bus.

Additionally, g_dbus_connection_export_action_group() will check if the exported GActionGroup implements GRemoteActionGroup and use the _full variants of the calls if available. This provides a mechanism by which to receive platform data for action invocations that arrive by way of D-Bus.

Available since: 2.32

Prerequisite

In order to implement RemoteActionGroup, your type must inherit fromGActionGroup.

Implementations

Instance methods

g_remote_action_group_activate_action_full

Activates the remote action.

since: 2.32

g_remote_action_group_change_action_state_full

Changes the state of a remote action.

since: 2.32

Interface structure

struct GioRemoteActionGroupInterface {
  GTypeInterface g_iface;
  void (* activate_action_full) (
    GRemoteActionGroup* remote,
    const gchar* action_name,
    GVariant* parameter,
    GVariant* platform_data
  );
  void (* change_action_state_full) (
    GRemoteActionGroup* remote,
    const gchar* action_name,
    GVariant* value,
    GVariant* platform_data
  );
  
}

The virtual function table for GRemoteActionGroup.

Interface members
g_iface
GTypeInterface
 No description available.
activate_action_full
void (* activate_action_full) (
    GRemoteActionGroup* remote,
    const gchar* action_name,
    GVariant* parameter,
    GVariant* platform_data
  )
 No description available.
change_action_state_full
void (* change_action_state_full) (
    GRemoteActionGroup* remote,
    const gchar* action_name,
    GVariant* value,
    GVariant* platform_data
  )
 No description available.

Virtual methods

Gio.RemoteActionGroup.activate_action_full

Activates the remote action.

since: 2.32

Gio.RemoteActionGroup.change_action_state_full

Changes the state of a remote action.

since: 2.32