Gio.RemoteActionGroup¶
interface
The GRemoteActionGroup interface is implemented by ActionGroup
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 ActionGroup used to activate actions:
ActionGroup.activate_action and
ActionGroup.change_action_state. These variants allow a
‘platform data’ GLib.Variant to be specified: a dictionary providing
context for the action invocation (for example: timestamps, startup
notification IDs, etc).
DBusActionGroup implements GRemoteActionGroup. This provides a
mechanism to send platform data for action invocations over D-Bus.
Additionally, DBusConnection.export_action_group will check if
the exported ActionGroup 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.
Methods¶
activate_action_full¶
def activate_action_full(self, action_name: str, parameter: GLib.Variant | None, platform_data: GLib.Variant) -> None
Activates the remote action.
This is the same as ActionGroup.activate_action except that it
allows for provision of "platform data" to be sent along with the
activation request. This typically contains details such as the user
interaction timestamp or startup notification information.
platform_data must be non-None and must have the type
G_VARIANT_TYPE_VARDICT. If it is floating, it will be consumed.
Parameters:
action_name— the name of the action to activateparameter— the optional parameter to the activationplatform_data— the platform data to send
change_action_state_full¶
def change_action_state_full(self, action_name: str, value: GLib.Variant, platform_data: GLib.Variant) -> None
Changes the state of a remote action.
This is the same as ActionGroup.change_action_state except that
it allows for provision of "platform data" to be sent along with the
state change request. This typically contains details such as the
user interaction timestamp or startup notification information.
platform_data must be non-None and must have the type
G_VARIANT_TYPE_VARDICT. If it is floating, it will be consumed.
Parameters:
action_name— the name of the action to change the state ofvalue— the new requested value for the stateplatform_data— the platform data to send
Virtual methods¶
do_activate_action_full¶
def do_activate_action_full(self, action_name: str, parameter: GLib.Variant | None, platform_data: GLib.Variant) -> None
Activates the remote action.
This is the same as ActionGroup.activate_action except that it
allows for provision of "platform data" to be sent along with the
activation request. This typically contains details such as the user
interaction timestamp or startup notification information.
platform_data must be non-None and must have the type
G_VARIANT_TYPE_VARDICT. If it is floating, it will be consumed.
Parameters:
action_name— the name of the action to activateparameter— the optional parameter to the activationplatform_data— the platform data to send
do_change_action_state_full¶
def do_change_action_state_full(self, action_name: str, value: GLib.Variant, platform_data: GLib.Variant) -> None
Changes the state of a remote action.
This is the same as ActionGroup.change_action_state except that
it allows for provision of "platform data" to be sent along with the
state change request. This typically contains details such as the
user interaction timestamp or startup notification information.
platform_data must be non-None and must have the type
G_VARIANT_TYPE_VARDICT. If it is floating, it will be consumed.
Parameters:
action_name— the name of the action to change the state ofvalue— the new requested value for the stateplatform_data— the platform data to send