patches/gnome-session-02-gnome-about.diff
changeset 13029 4be2c81a1c27
parent 12752 7a38a411c0be
child 13056 0a67822e2c77
--- a/patches/gnome-session-02-gnome-about.diff	Tue Aug 05 12:47:12 2008 +0000
+++ b/patches/gnome-session-02-gnome-about.diff	Tue Aug 05 13:04:30 2008 +0000
@@ -1,21 +1,12 @@
---- gnome-session-2.23.4/gnome-session/gsm.h-orig	2008-06-19 15:12:05.273155000 -0500
-+++ gnome-session-2.23.4/gnome-session/gsm.h	2008-06-19 15:12:29.015042000 -0500
-@@ -4,6 +4,9 @@
- #define GSM_GCONF_DEFAULT_SESSION_KEY           "/desktop/gnome/session/default-session"
- #define GSM_GCONF_REQUIRED_COMPONENTS_DIRECTORY "/desktop/gnome/session/required-components"
+diff -urN session.orig/gnome-session/session.c session.new/gnome-session/session.c
+--- session.orig/gnome-session/session.c	2008-08-05 13:11:56.645264000 +0100
++++ session.new/gnome-session/session.c	2008-08-05 13:42:35.726774000 +0100
+@@ -636,12 +636,36 @@
+     end_phase (session);
+ }
  
-+/* Start gnome-about on first-time startup */
-+#define ABOUT_PROMPT_KEY                        "/desktop/gnome/session/sun_extensions/viewed_about_jds_three"
++#define ABOUT_PROMPT_KEY "/desktop/gnome/session/sun_extensions/viewed_about_jds_three"
 +
- void gsm_initialization_error (gboolean fatal, const char *format, ...);
- 
- extern GsmSession *global_session;
---- gnome-session-2.23.4/gnome-session/main.c-orig	2008-06-19 16:26:15.033705000 -0500
-+++ gnome-session-2.23.4/gnome-session/main.c	2008-06-19 16:34:42.940141000 -0500
-@@ -37,6 +37,21 @@ static GOptionEntry entries[] = {
-   { NULL, 0, 0, 0, NULL, NULL, NULL }
- };
- 
 +static gint
 +show_gnome_about (gpointer data)
 +{
@@ -31,34 +22,19 @@
 +  return FALSE;
 +}
 +
- /**
-  * gsm_initialization_error:
-  * @fatal: whether or not the error is fatal to the login session
-@@ -94,6 +109,8 @@ main (int argc, char **argv)
-   char *display_str;
-   Display *xdisp;
-   GdkDisplay *gdisp;
+ void
+ gsm_session_start (GsmSession *session)
+ {
 +  gboolean show_about;
 +  GConfClient *gconf_client;
++
+   session->phase = GSM_SESSION_PHASE_INITIALIZATION;
  
-   bindtextdomain (GETTEXT_PACKAGE, LOCALE_DIR);
-   bind_textdomain_codeset (GETTEXT_PACKAGE, "UTF-8");
-@@ -143,6 +160,18 @@ main (int argc, char **argv)
- 
-   gsm_session_start (global_session);
- 
+   start_phase (session);
++
 +  gconf_client = gconf_client_get_default ();
 +  show_about = gconf_client_get_bool (gconf_client, ABOUT_PROMPT_KEY, NULL);
-+
-+#ifndef HAVE_XTSOL
-+  if (! show_about)
-+    gtk_timeout_add (4000, show_gnome_about, NULL);
-+#else
-+  if (! trusted_session)
-+    if (! show_about)
-+      gtk_timeout_add (4000, show_gnome_about, NULL);
-+#endif
-+
-   gtk_main ();
++  if (!show_about) gtk_timeout_add (4000, show_gnome_about, NULL);
+ }
  
-   gsm_xsmp_shutdown ();
+ GsmSessionPhase