--- metacity-2.27.0/src/core/session.c 2009-02-20 10:26:32.000000000 -0500
+++ hacked/src/core/session.c 2009-06-07 23:46:25.927041281 -0400
@@ -82,7 +82,7 @@
static char* load_state (const char *previous_save_file);
static void regenerate_save_file (void);
static const char* full_save_file (void);
-static void warn_about_lame_clients_and_finish_interact (gboolean shutdown);
+static void finish_interact (gboolean shutdown);
/* This is called when data is available on an ICE connection. */
static gboolean
@@ -382,7 +382,7 @@
return;
}
- warn_about_lame_clients_and_finish_interact (FALSE);
+ finish_interact (FALSE);
if (session_connection == NULL)
return;
@@ -584,7 +584,7 @@
current_state = STATE_DONE_WITH_INTERACT;
- warn_about_lame_clients_and_finish_interact (shutdown);
+ finish_interact (shutdown);
}
static void
@@ -1724,13 +1724,6 @@
return full_save_path;
}
-static int
-windows_cmp_by_title (MetaWindow *a,
- MetaWindow *b)
-{
- return g_utf8_collate (a->title, b->title);
-}
-
static void
finish_interact (gboolean shutdown)
{
@@ -1742,89 +1735,4 @@
}
}
-static void
-sigchld_handler (MetaNexus *nexus, guint arg1, gpointer arg2, gpointer user_data)
-{
- gboolean shutdown = GPOINTER_TO_INT (user_data);
-
- if (arg1 == 0) /* pressed "OK" */
- {
- finish_interact (shutdown);
- }
-}
-
-static void
-warn_about_lame_clients_and_finish_interact (gboolean shutdown)
-{
- GSList *lame = NULL;
- GSList *windows;
- GSList *lame_details = NULL;
- GSList *tmp;
- GSList *columns = NULL;
-
- windows = meta_display_list_windows (meta_get_display ());
- tmp = windows;
- while (tmp != NULL)
- {
- MetaWindow *window;
-
- window = tmp->data;
-
- /* only complain about normal windows, the others
- * are kind of dumb to worry about
- */
- if (window->sm_client_id == NULL &&
- window->type == META_WINDOW_NORMAL)
- lame = g_slist_prepend (lame, window);
-
- tmp = tmp->next;
- }
-
- g_slist_free (windows);
-
- if (lame == NULL)
- {
- /* No lame apps. */
- finish_interact (shutdown);
- return;
- }
-
- columns = g_slist_prepend (columns, "Window");
- columns = g_slist_prepend (columns, "Class");
-
- lame = g_slist_sort (lame, (GCompareFunc) windows_cmp_by_title);
-
- tmp = lame;
- while (tmp != NULL)
- {
- MetaWindow *w = tmp->data;
-
- lame_details = g_slist_prepend (lame_details,
- w->res_class ? w->res_class : "");
- lame_details = g_slist_prepend (lame_details,
- w->title);
-
- tmp = tmp->next;
- }
- g_slist_free (lame);
-
- meta_show_dialog("--list",
- _("These windows do not support "save current setup" "
- "and will have to be restarted manually next time "
- "you log in."),
- "240",
- meta_screen_get_screen_number (meta_get_display()->active_screen),
- NULL, NULL,
- None,
- columns,
- lame_details);
-
- g_slist_free (lame_details);
-
- g_signal_connect (sigchld_nexus, "sigchld",
- G_CALLBACK (sigchld_handler),
- GINT_TO_POINTER (shutdown));
-
-}
-
#endif /* HAVE_SM */