[Goodies-commits] r7203 - in gigolo/trunk: . src

Enrico Troeger enrico at xfce.org
Tue Apr 14 20:20:58 CEST 2009


Author: enrico
Date: 2009-04-14 18:20:58 +0000 (Tue, 14 Apr 2009)
New Revision: 7203

Modified:
   gigolo/trunk/ChangeLog
   gigolo/trunk/src/browsenetworkpanel.c
Log:
Expand the nodes in the network browser on the fly while they are added.

Modified: gigolo/trunk/ChangeLog
===================================================================
--- gigolo/trunk/ChangeLog	2009-04-14 18:03:28 UTC (rev 7202)
+++ gigolo/trunk/ChangeLog	2009-04-14 18:20:58 UTC (rev 7203)
@@ -3,6 +3,8 @@
  * src/browsenetworkpanel.c:
    Show 'No Workgroups/Hosts/Shares found' messages in the network
    browser if appropriate.
+   Expand the nodes in the network browser on the fly while they are
+   added.
  * src/backendgvfs.c, src/bookmarkeditdialog.c:
    Use gtk_list_store_insert_with_values() instead of
    gtk_list_store_append() and gtk_list_store_set().

Modified: gigolo/trunk/src/browsenetworkpanel.c
===================================================================
--- gigolo/trunk/src/browsenetworkpanel.c	2009-04-14 18:03:28 UTC (rev 7202)
+++ gigolo/trunk/src/browsenetworkpanel.c	2009-04-14 18:20:58 UTC (rev 7203)
@@ -200,12 +200,8 @@
 
 	find_empty_nodes(GTK_TREE_MODEL(priv->store));
 
-	gtk_tree_view_expand_all(GTK_TREE_VIEW(priv->tree));
-
 	gtk_widget_set_sensitive(priv->button_refresh, TRUE);
 
-	tree_selection_changed_cb(NULL, panel);
-
 	gdk_window_set_cursor(gigolo_widget_get_window(GTK_WIDGET(panel)), NULL);
 }
 
@@ -378,6 +374,13 @@
 }
 
 
+static void tree_row_inserted(G_GNUC_UNUSED GtkTreeModel *model, GtkTreePath *path,
+							  G_GNUC_UNUSED GtkTreeIter *iter, GtkTreeView *tree)
+{
+	gtk_tree_view_expand_to_path(tree, path);
+}
+
+
 static void tree_prepare(GigoloBrowseNetworkPanel *panel)
 {
 	GtkCellRenderer *text_renderer, *icon_renderer;
@@ -421,6 +424,7 @@
 	g_signal_connect(tree, "button-release-event", G_CALLBACK(tree_button_release_event), panel);
 	g_signal_connect(tree, "key-press-event", G_CALLBACK(tree_key_press_event), panel);
 	g_signal_connect(selection, "changed", G_CALLBACK(tree_selection_changed_cb), panel);
+	g_signal_connect(store, "row-inserted", G_CALLBACK(tree_row_inserted), tree);
 
 	/* popup menu */
 	menu = gtk_menu_new();
@@ -445,6 +449,8 @@
 	priv->tree = tree;
 	priv->store = store;
 	priv->popup_menu = menu;
+
+	tree_selection_changed_cb(NULL, panel);
 }
 
 




More information about the Goodies-commits mailing list