summaryrefslogtreecommitdiffstats
path: root/no-lame-dialog.patch
diff options
context:
space:
mode:
Diffstat (limited to 'no-lame-dialog.patch')
-rw-r--r--no-lame-dialog.patch133
1 files changed, 133 insertions, 0 deletions
diff --git a/no-lame-dialog.patch b/no-lame-dialog.patch
new file mode 100644
index 0000000..fbba206
--- /dev/null
+++ b/no-lame-dialog.patch
@@ -0,0 +1,133 @@
+--- 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 */