gnome-session r5045 - in trunk: . data gnome-session



Author: vuntz
Date: Tue Sep  2 14:48:45 2008
New Revision: 5045
URL: http://svn.gnome.org/viewvc/gnome-session?rev=5045&view=rev

Log:
2008-09-02  Vincent Untz  <vuntz gnome org>

	Remove required components from the default session. The required
	components should always be in the default session anyway, and keeping
	the list up-to-date in two places can break easily stuff (if someone
	adds a required component or if the user change the value if
	windowmanager only in required components, eg)
	Note that it affects the failsafe session case: all required components
	will also run in the failsafe session. This was intended to be this
	way, as far as I understand.

	* data/gnome-session.schemas.in: remove metacity,gnome-panel,nautilus
	from the default session
	* gnome-session/main.c: (load_standard_apps): always call
	append_required_apps() since the required applications are not in the
	default session.


Modified:
   trunk/ChangeLog
   trunk/data/gnome-session.schemas.in
   trunk/gnome-session/main.c

Modified: trunk/data/gnome-session.schemas.in
==============================================================================
--- trunk/data/gnome-session.schemas.in	(original)
+++ trunk/data/gnome-session.schemas.in	Tue Sep  2 14:48:45 2008
@@ -64,7 +64,8 @@
          <owner>gnome</owner>
          <type>list</type>
          <list_type>string</list_type>
-         <default>[gnome-settings-daemon,metacity,gnome-panel,nautilus]</default>
+         <default>[gnome-settings-daemon]</default>
+	 <!-- FIXME when not string frozen: mention that required components are added to the default session -->
          <locale name="C">
             <short>Default session</short>
             <long>List of applications that are part of the default session.</long>
@@ -77,7 +78,7 @@
          <type>list</type>
          <list_type>string</list_type>
          <default>[windowmanager,panel,filemanager]</default>
-	 <!-- FIXME: s/required-components/required_components/ -->
+	 <!-- FIXME when not string frozen: s/required-components/required_components/ -->
          <locale name="C">
             <short>Required session components</short>
             <long>List of components that are required as part of the session. (Each element names a key under "/desktop/gnome/session/required-components".) The Session Preferences will not normally allow users to remove a required component from the session, and the session manager will automatically add the required components back to the session if they do get removed.</long>

Modified: trunk/gnome-session/main.c
==============================================================================
--- trunk/gnome-session/main.c	(original)
+++ trunk/gnome-session/main.c	Tue Sep  2 14:48:45 2008
@@ -247,6 +247,8 @@
         return app_path;
 }
 
+/* This doesn't contain the required components, so we need to always
+ * call append_required_apps() after a call to append_default_apps(). */
 static void
 append_default_apps (GsmManager *manager,
                      const char *default_session_key,
@@ -379,11 +381,11 @@
 
         append_saved_session_apps (manager);
 
-        /* We don't do this in the failsafe case, because the default
-         * session should include all requirements anyway. */
+ out:
+        /* We do this at the end in case a saved session contains an
+         * application that already provides one of the components. */
         append_required_apps (manager);
 
- out:
         g_strfreev (autostart_dirs);
 }
 



[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]