comparison src/blist.c @ 6392:e9974608b319

[gaim-migrate @ 6897] deryni absolutely rocks. Amazing guy. We now have these beautiful protocol icons on tabs that update to reflect status. Away, grey on idle, even the sign on/off doors. Wow. This will no doubt be known as the highlight of 0.67. committer: Tailor Script <tailor@pidgin.im>
author Christian Hammond <chipx86@chipx86.com>
date Wed, 06 Aug 2003 11:38:57 +0000
parents 01289157fc37
children e7b87c8e8c0a
comparison
equal deleted inserted replaced
6391:4b2d8d7d0118 6392:e9974608b319
165 ops->update(gaimbuddylist, (GaimBlistNode*)buddy); 165 ops->update(gaimbuddylist, (GaimBlistNode*)buddy);
166 } 166 }
167 167
168 static gboolean presence_update_timeout_cb(struct buddy *buddy) { 168 static gboolean presence_update_timeout_cb(struct buddy *buddy) {
169 struct gaim_blist_ui_ops *ops = gaimbuddylist->ui_ops; 169 struct gaim_blist_ui_ops *ops = gaimbuddylist->ui_ops;
170 GaimConversation *conv = gaim_find_conversation(buddy->name);
170 171
171 if(buddy->present == GAIM_BUDDY_SIGNING_ON) { 172 if(buddy->present == GAIM_BUDDY_SIGNING_ON) {
172 buddy->present = GAIM_BUDDY_ONLINE; 173 buddy->present = GAIM_BUDDY_ONLINE;
173 } else if(buddy->present == GAIM_BUDDY_SIGNING_OFF) { 174 } else if(buddy->present == GAIM_BUDDY_SIGNING_OFF) {
174 buddy->present = GAIM_BUDDY_OFFLINE; 175 buddy->present = GAIM_BUDDY_OFFLINE;
176 177
177 buddy->timer = 0; 178 buddy->timer = 0;
178 179
179 if (ops) 180 if (ops)
180 ops->update(gaimbuddylist, (GaimBlistNode*)buddy); 181 ops->update(gaimbuddylist, (GaimBlistNode*)buddy);
182
183 if (conv) {
184 if (buddy->present == GAIM_BUDDY_ONLINE)
185 gaim_conversation_update(conv, GAIM_CONV_ACCOUNT_ONLINE);
186 else if (buddy->present == GAIM_BUDDY_OFFLINE)
187 gaim_conversation_update(conv, GAIM_CONV_ACCOUNT_OFFLINE);
188 }
181 189
182 return FALSE; 190 return FALSE;
183 } 191 }
184 192
185 void gaim_blist_update_buddy_presence(struct buddy *buddy, int presence) { 193 void gaim_blist_update_buddy_presence(struct buddy *buddy, int presence) {