Mercurial > pidgin
comparison src/gtkblist.c @ 13509:56abb67edec9
[gaim-migrate @ 15885]
SF Patch #1446694 from Sadrul
"When you start editing the alias of a buddy with weird
(non-ascii) characters in it, the text for that node
(and sometimes an adjacent row) get corrupted. This
patch fixes that."
committer: Tailor Script <tailor@pidgin.im>
author | Richard Laager <rlaager@wiktel.com> |
---|---|
date | Tue, 14 Mar 2006 07:25:54 +0000 |
parents | 38dcde2c8c4b |
children | 65486b7e8e45 |
comparison
equal
deleted
inserted
replaced
13508:9710aeb12c0d | 13509:56abb67edec9 |
---|---|
337 static void gtk_blist_menu_alias_cb(GtkWidget *w, GaimBlistNode *node) | 337 static void gtk_blist_menu_alias_cb(GtkWidget *w, GaimBlistNode *node) |
338 { | 338 { |
339 GtkTreeIter iter; | 339 GtkTreeIter iter; |
340 GtkTreePath *path; | 340 GtkTreePath *path; |
341 const char *text = NULL; | 341 const char *text = NULL; |
342 char *esc; | |
342 | 343 |
343 if (!(get_iter_from_node(node, &iter))) { | 344 if (!(get_iter_from_node(node, &iter))) { |
344 /* This is either a bug, or the buddy is in a collapsed contact */ | 345 /* This is either a bug, or the buddy is in a collapsed contact */ |
345 node = node->parent; | 346 node = node->parent; |
346 if (!get_iter_from_node(node, &iter)) | 347 if (!get_iter_from_node(node, &iter)) |
363 break; | 364 break; |
364 default: | 365 default: |
365 g_return_if_reached(); | 366 g_return_if_reached(); |
366 } | 367 } |
367 | 368 |
368 gtk_tree_store_set(gtkblist->treemodel, &iter, NAME_COLUMN, text, -1); | 369 esc = g_markup_escape_text(text, -1); |
370 gtk_tree_store_set(gtkblist->treemodel, &iter, NAME_COLUMN, esc, -1); | |
371 g_free(esc); | |
369 | 372 |
370 path = gtk_tree_model_get_path(GTK_TREE_MODEL(gtkblist->treemodel), &iter); | 373 path = gtk_tree_model_get_path(GTK_TREE_MODEL(gtkblist->treemodel), &iter); |
371 g_object_set(G_OBJECT(gtkblist->text_rend), "editable", TRUE, NULL); | 374 g_object_set(G_OBJECT(gtkblist->text_rend), "editable", TRUE, NULL); |
372 gtk_tree_view_set_enable_search (GTK_TREE_VIEW(gtkblist->treeview), FALSE); | 375 gtk_tree_view_set_enable_search (GTK_TREE_VIEW(gtkblist->treeview), FALSE); |
373 gtk_widget_grab_focus(gtkblist->treeview); | 376 gtk_widget_grab_focus(gtkblist->treeview); |