anjuta r4681 - in trunk: . plugins/file-manager



Author: jhs
Date: Mon Feb  2 12:12:45 2009
New Revision: 4681
URL: http://svn.gnome.org/viewvc/anjuta?rev=4681&view=rev

Log:
2009-02-02  Johannes Schmid  <jhs gnome org>

	* plugins/file-manager/plugin.c (file_manager_set_default_uri),
	(on_gconf_notify_root), (on_gconf_notify), (file_manager_activate):
	#566800 â Had a random crash in "File manager" preferences pane (avoid
	flickering when a project is open)

Modified:
   trunk/ChangeLog
   trunk/plugins/file-manager/plugin.c

Modified: trunk/plugins/file-manager/plugin.c
==============================================================================
--- trunk/plugins/file-manager/plugin.c	(original)
+++ trunk/plugins/file-manager/plugin.c	Mon Feb  2 12:12:45 2009
@@ -83,7 +83,8 @@
 
 	file = g_file_new_for_path (anjuta_preferences_get (file_manager->prefs, PREF_ROOT));
 	char *uri = g_file_get_uri (file);
-	g_object_set (G_OBJECT (file_manager->fv), "base_uri", uri, NULL);
+	if (uri)
+		g_object_set (G_OBJECT (file_manager->fv), "base_uri", uri, NULL);
 	file_manager->have_project = FALSE;
 	g_free (uri);
 	g_object_unref (file);
@@ -175,6 +176,17 @@
 }
 
 static void 
+on_gconf_notify_root(GConfClient *gclient, guint cnxn_id,
+					 GConfEntry *entry, gpointer user_data)
+{
+	AnjutaFileManager* file_manager = (AnjutaFileManager*) user_data;
+	if (!file_manager->have_project)
+	{
+		file_manager_set_default_uri (file_manager);
+		file_view_refresh (file_manager->fv);
+	}
+}
+static void 
 on_gconf_notify(GConfClient *gclient, guint cnxn_id,
 				GConfEntry *entry, gpointer user_data)
 {
@@ -186,18 +198,8 @@
 				  "filter_binary", anjuta_preferences_get_int (file_manager->prefs, PREF_FILTER_BINARY),
 				  "filter_hidden", anjuta_preferences_get_int (file_manager->prefs, PREF_FILTER_HIDDEN),
 				  "filter_backup", anjuta_preferences_get_int (file_manager->prefs, PREF_FILTER_BACKUP),
-				  "filter_unversioned", anjuta_preferences_get_int (file_manager->prefs, PREF_FILTER_UNVERSIONED), NULL);				  
-	
-	if (!file_manager->have_project)
-	{
-		file_manager_set_default_uri (file_manager);
-		file_view_refresh (file_manager->fv);
-	}
-	else
-	{
-		file_view_refresh (file_manager->fv);
-	}
-	
+				  "filter_unversioned", anjuta_preferences_get_int (file_manager->prefs, PREF_FILTER_UNVERSIONED), NULL);
+	file_view_refresh (file_manager->fv);
 }
 
 static gboolean
@@ -261,7 +263,7 @@
 								 project_root_removed, NULL);
 	
 	
-	REGISTER_NOTIFY (PREF_ROOT, on_gconf_notify);
+	REGISTER_NOTIFY (PREF_ROOT, on_gconf_notify_root);
 	REGISTER_NOTIFY (PREF_FILTER_BINARY, on_gconf_notify);
 	REGISTER_NOTIFY (PREF_FILTER_BACKUP, on_gconf_notify);
 	REGISTER_NOTIFY (PREF_FILTER_HIDDEN, on_gconf_notify);



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