mirror of
https://gitlab.gnome.org/GNOME/glib.git
synced 2025-02-03 17:56:17 +01:00
docs: update g_action_group_activate_action() remote activation semantics
Refer https://gitlab.gnome.org/GNOME/glib/-/issues/2284
This commit is contained in:
parent
e1a99c7f75
commit
e789e50f12
@ -589,6 +589,33 @@ g_action_group_change_action_state (GActionGroup *action_group,
|
|||||||
* parameters then @parameter must be %NULL. See
|
* parameters then @parameter must be %NULL. See
|
||||||
* g_action_group_get_action_parameter_type().
|
* g_action_group_get_action_parameter_type().
|
||||||
*
|
*
|
||||||
|
* If the #GActionGroup implementation supports asynchronous remote
|
||||||
|
* activation over D-Bus, this call may return before the relevant
|
||||||
|
* D-Bus traffic has been sent, or any replies have been received. In
|
||||||
|
* order to block on such asynchronous activation calls,
|
||||||
|
* g_dbus_connection_flush() should be called prior to the code, which
|
||||||
|
* depends on the result of the action activation. Without flushing
|
||||||
|
* the D-Bus connection, there is no guarantee that the action would
|
||||||
|
* have been activated.
|
||||||
|
*
|
||||||
|
* The following code which runs in a remote app instance, shows an
|
||||||
|
* example of a "quit" action being activated on the primary app
|
||||||
|
* instance over D-Bus. Here g_dbus_connection_flush() is called
|
||||||
|
* before `exit()`. Without g_dbus_connection_flush(), the "quit" action
|
||||||
|
* may fail to be activated on the primary instance.
|
||||||
|
*
|
||||||
|
* |[<!-- language="C" -->
|
||||||
|
* // call "quit" action on primary instance
|
||||||
|
* g_action_group_activate_action (G_ACTION_GROUP (app), "quit", NULL);
|
||||||
|
*
|
||||||
|
* // make sure the action is activated now
|
||||||
|
* g_dbus_connection_flush (...);
|
||||||
|
*
|
||||||
|
* g_debug ("application has been terminated. exiting.");
|
||||||
|
*
|
||||||
|
* exit (0);
|
||||||
|
* ]|
|
||||||
|
*
|
||||||
* Since: 2.28
|
* Since: 2.28
|
||||||
**/
|
**/
|
||||||
void
|
void
|
||||||
|
Loading…
Reference in New Issue
Block a user