module Gio::RemoteActionGroup

Overview

The GRemoteActionGroup interface is implemented by Gio::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 Gio::ActionGroup used to activate actions: Gio::ActionGroup#activate_action and Gio::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).

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

Additionally, Gio::DBusConnection#export_action_group will check if the exported Gio::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.

Direct including types

Defined in:

lib/gi-crystal/src/auto/gio-2.0/remote_action_group.cr

Constructors

Class Method Summary

Instance Method Summary

Constructor Detail

def self.cast(obj : GObject::Object) : self #

Cast a GObject::Object to self, throws a TypeCastError if the cast can't be made.


Class Method Detail

def self.cast?(obj : GObject::Object) : self | Nil #

def self.g_type : UInt64 #

Instance Method Detail

def activate_action_full(action_name : String, parameter : _ | Nil, platform_data : _) : Nil #

def change_action_state_full(action_name : String, value : _, platform_data : _) : Nil #

abstract def to_unsafe #