| 4270 static void |
4270 static void |
| 4271 received_im_msg_cb(GaimAccount *account, char *sender, char *message, |
4271 received_im_msg_cb(GaimAccount *account, char *sender, char *message, |
| 4272 GaimConversation *conv, int flags) |
4272 GaimConversation *conv, int flags) |
| 4273 { |
4273 { |
| 4274 GaimConversationUiOps *ui_ops = gaim_gtk_conversations_get_conv_ui_ops(); |
4274 GaimConversationUiOps *ui_ops = gaim_gtk_conversations_get_conv_ui_ops(); |
| 4275 if(conv) |
4275 if (conv != NULL) |
| 4276 return; |
4276 return; |
| 4277 |
4277 |
| 4278 /* create hidden conv if hide_new pref is always */ |
4278 /* create hidden conv if hide_new pref is always */ |
| 4279 if(strcmp(gaim_prefs_get_string("/gaim/gtk/conversations/im/hide_new"), "always")==0) { |
4279 if (strcmp(gaim_prefs_get_string("/gaim/gtk/conversations/im/hide_new"), "always") == 0) |
| |
4280 { |
| 4280 ui_ops->create_conversation = gaim_gtkconv_new_hidden; |
4281 ui_ops->create_conversation = gaim_gtkconv_new_hidden; |
| 4281 gaim_conversation_new(GAIM_CONV_TYPE_IM, account, sender); |
4282 gaim_conversation_new(GAIM_CONV_TYPE_IM, account, sender); |
| 4282 ui_ops->create_conversation = gaim_gtkconv_new; |
4283 ui_ops->create_conversation = gaim_gtkconv_new; |
| 4283 return; |
4284 return; |
| 4284 } |
4285 } |
| 4285 |
4286 |
| 4286 /* create hidden conv if hide_new pref is away and account is away */ |
4287 /* create hidden conv if hide_new pref is away and account is away */ |
| 4287 if(strcmp(gaim_prefs_get_string("/gaim/gtk/conversations/im/hide_new"), "away")==0 |
4288 if (strcmp(gaim_prefs_get_string("/gaim/gtk/conversations/im/hide_new"), "away") == 0 && |
| 4288 && !gaim_status_is_available(gaim_account_get_active_status(account))) { |
4289 !gaim_status_is_available(gaim_account_get_active_status(account))) |
| |
4290 { |
| 4289 ui_ops->create_conversation = gaim_gtkconv_new_hidden; |
4291 ui_ops->create_conversation = gaim_gtkconv_new_hidden; |
| 4290 gaim_conversation_new(GAIM_CONV_TYPE_IM, account, sender); |
4292 gaim_conversation_new(GAIM_CONV_TYPE_IM, account, sender); |
| 4291 ui_ops->create_conversation = gaim_gtkconv_new; |
4293 ui_ops->create_conversation = gaim_gtkconv_new; |
| 4292 return; |
4294 return; |
| 4293 } |
4295 } |