summaryrefslogtreecommitdiff
path: root/libwnck/application.c
diff options
context:
space:
mode:
Diffstat (limited to 'libwnck/application.c')
-rw-r--r--libwnck/application.c23
1 files changed, 22 insertions, 1 deletions
diff --git a/libwnck/application.c b/libwnck/application.c
index 1c05419..9171549 100644
--- a/libwnck/application.c
+++ b/libwnck/application.c
@@ -557,7 +557,8 @@ _wnck_application_create (Window xwindow,
*/
_wnck_select_input (xscreen,
application->priv->xwindow,
- WNCK_APP_WINDOW_EVENT_MASK);
+ WNCK_APP_WINDOW_EVENT_MASK,
+ TRUE);
return application;
}
@@ -676,6 +677,26 @@ _wnck_application_process_property_notify (WnckApplication *app,
}
static void
+_wnck_app_iter_destroy_application (gpointer key,
+ gpointer value,
+ gpointer user_data)
+{
+ g_object_unref (WNCK_APPLICATION (value));
+}
+
+void
+_wnck_application_shutdown_all (void)
+{
+ if (app_hash != NULL)
+ {
+ g_hash_table_foreach (app_hash, _wnck_app_iter_destroy_application, NULL);
+ g_hash_table_destroy (app_hash);
+ app_hash = NULL;
+ }
+}
+
+
+static void
emit_name_changed (WnckApplication *app)
{
g_signal_emit (G_OBJECT (app),