pidgin/gtkconv.c

changeset 22124
792a3eff94e6
parent 22078
296fd9a4ae86
child 22140
40e08549fb24
equal deleted inserted replaced
22123:8d8d10cd6878 22124:792a3eff94e6
2418 static void 2418 static void
2419 update_tab_icon(PurpleConversation *conv) 2419 update_tab_icon(PurpleConversation *conv)
2420 { 2420 {
2421 PidginConversation *gtkconv; 2421 PidginConversation *gtkconv;
2422 PidginWindow *win; 2422 PidginWindow *win;
2423 PurpleBuddy *b;
2424 GList *l; 2423 GList *l;
2425 GdkPixbuf *status = NULL; 2424 GdkPixbuf *status = NULL;
2426 GdkPixbuf *infopane_status = NULL; 2425 GdkPixbuf *infopane_status = NULL;
2427 GdkPixbuf *emblem = NULL; 2426 GdkPixbuf *emblem = NULL;
2428 2427
2431 gtkconv = PIDGIN_CONVERSATION(conv); 2430 gtkconv = PIDGIN_CONVERSATION(conv);
2432 win = gtkconv->win; 2431 win = gtkconv->win;
2433 if (conv != gtkconv->active_conv) 2432 if (conv != gtkconv->active_conv)
2434 return; 2433 return;
2435 2434
2436
2437 status = pidgin_conv_get_tab_icon(conv, TRUE); 2435 status = pidgin_conv_get_tab_icon(conv, TRUE);
2438 infopane_status = pidgin_conv_get_tab_icon(conv, FALSE); 2436 infopane_status = pidgin_conv_get_tab_icon(conv, FALSE);
2439 2437
2440 b = purple_find_buddy(conv->account, conv->name); 2438 if (purple_conversation_get_type(conv) == PURPLE_CONV_TYPE_IM) {
2441 if (b) 2439 PurpleBuddy *b = purple_find_buddy(conv->account, conv->name);
2442 emblem = pidgin_blist_get_emblem((PurpleBlistNode*)b); 2440 if (b)
2441 emblem = pidgin_blist_get_emblem((PurpleBlistNode*)b);
2442 } else {
2443 PurpleChat *c = purple_blist_find_chat(conv->account, conv->name);
2444 if (c)
2445 emblem = pidgin_blist_get_emblem((PurpleBlistNode*)c);
2446 }
2443 2447
2444 g_return_if_fail(status != NULL); 2448 g_return_if_fail(status != NULL);
2445 2449
2446 gtk_image_set_from_pixbuf(GTK_IMAGE(gtkconv->icon), status); 2450 gtk_image_set_from_pixbuf(GTK_IMAGE(gtkconv->icon), status);
2447 gtk_image_set_from_pixbuf(GTK_IMAGE(gtkconv->menu_icon), status); 2451 gtk_image_set_from_pixbuf(GTK_IMAGE(gtkconv->menu_icon), status);

mercurial