Mercurial > pidgin
comparison src/buddy.c @ 945:f8de52dbd0cb
[gaim-migrate @ 955]
hopefully this will fix some issues i've been having with disappearing rows in the buddy list. if this fucks things up for someone, let me know.
committer: Tailor Script <tailor@pidgin.im>
author | Eric Warmenhoven <eric@warmenhoven.org> |
---|---|
date | Wed, 04 Oct 2000 10:26:13 +0000 |
parents | 9fca1293f871 |
children | fa681641643d |
comparison
equal
deleted
inserted
replaced
944:2f64424bf319 | 945:f8de52dbd0cb |
---|---|
208 b = (struct buddy *)mem->data; | 208 b = (struct buddy *)mem->data; |
209 | 209 |
210 if (b->present || !GTK_WIDGET_VISIBLE(b->item)) | 210 if (b->present || !GTK_WIDGET_VISIBLE(b->item)) |
211 set_buddy(b); | 211 set_buddy(b); |
212 | 212 |
213 if (b->present) count++; | 213 if (b->present || GTK_WIDGET_VISIBLE(b->item)) |
214 count++; | |
214 | 215 |
215 mem = mem->next; | 216 mem = mem->next; |
216 } | 217 } |
217 /* this is a fall-back in case we missed any */ | 218 /* this is a fall-back in case we missed any */ |
218 if (!count && (display_options & OPT_DISP_NO_MT_GRP)) | 219 if (!count && (display_options & OPT_DISP_NO_MT_GRP)) |
498 serv_remove_buddy(delb->name); | 499 serv_remove_buddy(delb->name); |
499 g_free(delb); | 500 g_free(delb); |
500 mem = delg->members; | 501 mem = delg->members; |
501 while (mem && !count) { | 502 while (mem && !count) { |
502 b = (struct buddy *)mem->data; | 503 b = (struct buddy *)mem->data; |
503 if (b->present) count++; | 504 if (b->present || GTK_WIDGET_VISIBLE(b->item)) count++; |
504 mem = mem->next; | 505 mem = mem->next; |
505 } | 506 } |
506 if (!count && (display_options & OPT_DISP_NO_MT_GRP)) | 507 if (!count && (display_options & OPT_DISP_NO_MT_GRP)) |
507 gtk_widget_hide(delg->item); | 508 gtk_widget_hide(delg->item); |
508 | 509 |
743 GList *mem = old_g->members; | 744 GList *mem = old_g->members; |
744 struct buddy *bt; | 745 struct buddy *bt; |
745 int count = 0; | 746 int count = 0; |
746 while (mem && !count) { | 747 while (mem && !count) { |
747 bt = (struct buddy *)mem->data; | 748 bt = (struct buddy *)mem->data; |
748 if (bt->present) count++; | 749 if (bt->present || GTK_WIDGET_VISIBLE(b->item)) count++; |
749 mem = mem->next; | 750 mem = mem->next; |
750 } | 751 } |
751 if (!count && (display_options & OPT_DISP_NO_MT_GRP)) | 752 if (!count && (display_options & OPT_DISP_NO_MT_GRP)) |
752 gtk_widget_hide(old_g->item); | 753 gtk_widget_hide(old_g->item); |
753 gtk_widget_show(new_g->item); | 754 gtk_widget_show(new_g->item); |
1342 gtk_widget_hide(b->item); | 1343 gtk_widget_hide(b->item); |
1343 g = find_group_by_buddy(name); | 1344 g = find_group_by_buddy(name); |
1344 mem = g->members; | 1345 mem = g->members; |
1345 while (mem) { | 1346 while (mem) { |
1346 b = (struct buddy *)mem->data; | 1347 b = (struct buddy *)mem->data; |
1347 if (b->present) { | 1348 if (b->present || GTK_WIDGET_VISIBLE(b->item)) { |
1348 count++; | 1349 count++; |
1349 break; | 1350 break; |
1350 } | 1351 } |
1351 mem = mem->next; | 1352 mem = mem->next; |
1352 } | 1353 } |