application: introduce methods to mark the application as busy

This feature is intended for clients that want to signal a desktop shell
their busy state, for instance because a long-running operation is
pending.
The API works in a similar way to g_application_hold and
g_application_release: applications can call g_application_mark_busy()
to increase a counter that will keep the application marked as busy
until the counter reaches zero again.

The busy state is exported read-only on the org.gtk.Application interface
for clients to use.

https://bugzilla.gnome.org/show_bug.cgi?id=672018
This commit is contained in:
Cosimo Cecchi
2013-04-03 14:12:03 -04:00
parent 96f7e6d70b
commit db325cd6a3
5 changed files with 124 additions and 0 deletions

View File

@@ -39,3 +39,6 @@ void g_application_impl_flush (GApplic
GDBusConnection * g_application_impl_get_dbus_connection (GApplicationImpl *impl);
const gchar * g_application_impl_get_dbus_object_path (GApplicationImpl *impl);
void g_application_impl_set_busy_state (GApplicationImpl *impl,
gboolean busy);