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 }