Mercurial > pidgin.yaz
comparison src/gtkblist.c @ 13510:65486b7e8e45
[gaim-migrate @ 15886]
SF Patch #1446662 from Sadrul
"This patch keeps the selected node selected after the
buddy-list is redrawn."
committer: Tailor Script <tailor@pidgin.im>
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Tue, 14 Mar 2006 07:30:52 +0000 |
parents | 56abb67edec9 |
children | 0bdcd590cd05 |
comparison
equal
deleted
inserted
replaced
13509:56abb67edec9 | 13510:65486b7e8e45 |
---|---|
3345 gaim_gtk_blist_sort_method_set(gaim_prefs_get_string("/gaim/gtk/blist/sort_type")); | 3345 gaim_gtk_blist_sort_method_set(gaim_prefs_get_string("/gaim/gtk/blist/sort_type")); |
3346 } | 3346 } |
3347 | 3347 |
3348 static void _prefs_change_redo_list() | 3348 static void _prefs_change_redo_list() |
3349 { | 3349 { |
3350 GtkTreeSelection *sel; | |
3351 GtkTreeIter iter; | |
3352 GaimBlistNode *node = NULL; | |
3353 | |
3354 sel = gtk_tree_view_get_selection(GTK_TREE_VIEW(gtkblist->treeview)); | |
3355 if (gtk_tree_selection_get_selected(sel, NULL, &iter)) | |
3356 { | |
3357 gtk_tree_model_get(GTK_TREE_MODEL(gtkblist->treemodel), &iter, NODE_COLUMN, &node, -1); | |
3358 } | |
3359 | |
3350 redo_buddy_list(gaim_get_blist(), TRUE); | 3360 redo_buddy_list(gaim_get_blist(), TRUE); |
3351 #if GTK_CHECK_VERSION(2,6,0) | 3361 #if GTK_CHECK_VERSION(2,6,0) |
3352 gtk_tree_view_columns_autosize(GTK_TREE_VIEW(gtkblist->treeview)); | 3362 gtk_tree_view_columns_autosize(GTK_TREE_VIEW(gtkblist->treeview)); |
3353 #endif | 3363 #endif |
3364 | |
3365 if (node) | |
3366 { | |
3367 struct _gaim_gtk_blist_node *gtknode; | |
3368 GtkTreePath *path; | |
3369 | |
3370 gtknode = node->ui_data; | |
3371 if (gtknode && gtknode->row) | |
3372 { | |
3373 path = gtk_tree_row_reference_get_path(gtknode->row); | |
3374 gtk_tree_selection_select_path(sel, path); | |
3375 gtk_tree_view_scroll_to_cell(GTK_TREE_VIEW(gtkblist->treeview), path, NULL, FALSE, 0, 0); | |
3376 gtk_tree_path_free(path); | |
3377 } | |
3378 } | |
3354 } | 3379 } |
3355 | 3380 |
3356 static void _prefs_change_sort_method(const char *pref_name, GaimPrefType type, | 3381 static void _prefs_change_sort_method(const char *pref_name, GaimPrefType type, |
3357 gconstpointer val, gpointer data) | 3382 gconstpointer val, gpointer data) |
3358 { | 3383 { |