| 1074 else |
1074 else |
| 1075 return g_hash_table_lookup(yd->hash, b->name); |
1075 return g_hash_table_lookup(yd->hash, b->name); |
| 1076 } |
1076 } |
| 1077 } |
1077 } |
| 1078 |
1078 |
| |
1079 static char *yahoo_tooltip_text(struct buddy *b) |
| |
1080 { |
| |
1081 struct yahoo_data *yd = (struct yahoo_data*)b->account->gc->proto_data; |
| |
1082 if (b->uc & UC_UNAVAILABLE && b->uc >> 2 != YAHOO_STATUS_IDLE) { |
| |
1083 if ((b->uc >> 2) != YAHOO_STATUS_CUSTOM) |
| |
1084 return g_strdup(yahoo_get_status_string(b->uc >> 2)); |
| |
1085 else |
| |
1086 return g_strdup(g_hash_table_lookup(yd->hash, b->name)); |
| |
1087 } |
| |
1088 } |
| |
1089 |
| 1079 static GList *yahoo_buddy_menu(struct gaim_connection *gc, char *who) |
1090 static GList *yahoo_buddy_menu(struct gaim_connection *gc, char *who) |
| 1080 { |
1091 { |
| 1081 GList *m = NULL; |
1092 GList *m = NULL; |
| 1082 struct proto_buddy_menu *pbm; |
1093 struct proto_buddy_menu *pbm; |
| 1083 struct yahoo_data *yd = (struct yahoo_data *)gc->proto_data; |
1094 struct yahoo_data *yd = (struct yahoo_data *)gc->proto_data; |
| 1345 ret->login = yahoo_login; |
1356 ret->login = yahoo_login; |
| 1346 ret->close = yahoo_close; |
1357 ret->close = yahoo_close; |
| 1347 ret->buddy_menu = yahoo_buddy_menu; |
1358 ret->buddy_menu = yahoo_buddy_menu; |
| 1348 ret->list_icon = yahoo_list_icon; |
1359 ret->list_icon = yahoo_list_icon; |
| 1349 ret->status_text = yahoo_status_text; |
1360 ret->status_text = yahoo_status_text; |
| |
1361 ret->tooltip_text = yahoo_tooltip_text; |
| 1350 ret->actions = yahoo_actions; |
1362 ret->actions = yahoo_actions; |
| 1351 ret->send_im = yahoo_send_im; |
1363 ret->send_im = yahoo_send_im; |
| 1352 ret->away_states = yahoo_away_states; |
1364 ret->away_states = yahoo_away_states; |
| 1353 ret->set_away = yahoo_set_away; |
1365 ret->set_away = yahoo_set_away; |
| 1354 ret->set_idle = yahoo_set_idle; |
1366 ret->set_idle = yahoo_set_idle; |