comparison src/conversation.c @ 8442:3d0178c4f390

[gaim-migrate @ 9172] " This is that thing Sean told me to do. Well part of it. We now are careful to send html to gtkimhtml when sending a message, while still sending plain text to those protocols that need it. We send the fancy html on all the signals we emit though. Sean didn't say what to do about those. I figure always sending html on signals sounds good. I'm not sure I like how I did this exactly, especially with respect to whether it's the core or ui's job to make sure the html prpl flag gets honored. But it should be good enough for now. Anyway, this fixes the "sending someone <> on IRC/ICQ/MSN/etc shows up blank on my end!" problem. All prpls need to pass html to the core now, as Sean said in his email. I made msn, and gg comply. IRC was cool enough to already be complying. Jabber is so cool it actually takes html and isn't effected by this. ICQ, OSCAR, Trepia, zephyr, and napster still need to be fixed. (Note that it's not this patch that breaks them, they're already broken in CVS). I think TOC uses html and isn't effected. I'm not bothering with the old ICQ prpl. I'm not sure what's going on in trepia. I'm even less sure what's going on in zephyr. I didn't even check if napster used html or not. For OSCAR, I'm hoping I can get KingAnt to fix it. Normally I'd say, ICQ messages all need gaim_escape_html called on them. But what about receiving an ICQ messagefrom an AIM account, or vise versa?" -- marv yet again (00:48:48) LSchiere: marv: should i apply the patch sean asked for or should i wait for him to look at it? (00:49:17) marv: LSchiere: he talked like I should get it applied by someone not him (00:49:21) LSchiere: kay (00:49:29) marv: he said i knew the appropriate people to talk to (00:50:16) LSchiere: KingAnt: marv is making work for you committer: Tailor Script <tailor@pidgin.im>
author Luke Schierer <lschiere@pidgin.im>
date Sun, 14 Mar 2004 05:42:56 +0000
parents 143d0b29ba82
children 4aee5a47937d
comparison
equal deleted inserted replaced
8441:ea999c4a9a11 8442:3d0178c4f390
234 if (im->images != NULL) { 234 if (im->images != NULL) {
235 imflags |= GAIM_CONV_IM_IMAGES; 235 imflags |= GAIM_CONV_IM_IMAGES;
236 msgflags |= GAIM_MESSAGE_IMAGES; 236 msgflags |= GAIM_MESSAGE_IMAGES;
237 } 237 }
238 238
239 err = serv_send_im(gc, gaim_conversation_get_name(conv), 239 if (gc && gc->flags & GAIM_CONNECTION_HTML) {
240 sent, imflags); 240 err = serv_send_im(gc, gaim_conversation_get_name(conv),
241 sent, imflags);
242 } else {
243 gchar *tmp = gaim_unescape_html(sent);
244 err = serv_send_im(gc, gaim_conversation_get_name(conv),
245 tmp, imflags);
246 g_free(tmp);
247 }
241 248
242 if ((err > 0) && (displayed != NULL)) 249 if ((err > 0) && (displayed != NULL))
243 gaim_conv_im_write(im, NULL, displayed, msgflags, time(NULL)); 250 gaim_conv_im_write(im, NULL, displayed, msgflags, time(NULL));
244 251
245 if (im->images != NULL) { 252 if (im->images != NULL) {
267 gaim_signal_emit(gaim_conversations_get_handle(), "sending-chat-msg", 274 gaim_signal_emit(gaim_conversations_get_handle(), "sending-chat-msg",
268 gaim_conversation_get_account(conv), &sent, 275 gaim_conversation_get_account(conv), &sent,
269 gaim_conv_chat_get_id(GAIM_CONV_CHAT(conv))); 276 gaim_conv_chat_get_id(GAIM_CONV_CHAT(conv)));
270 277
271 if (sent != NULL && sent[0] != '\0') { 278 if (sent != NULL && sent[0] != '\0') {
272 err = serv_chat_send(gc, gaim_conv_chat_get_id(GAIM_CONV_CHAT(conv)), sent); 279 if (gc && gc->flags & GAIM_CONNECTION_HTML) {
280 err = serv_chat_send(gc, gaim_conv_chat_get_id(GAIM_CONV_CHAT(conv)), sent);
281 } else {
282 gchar *tmp = gaim_unescape_html(sent);
283 err = serv_chat_send(gc, gaim_conv_chat_get_id(GAIM_CONV_CHAT(conv)), tmp);
284 g_free(tmp);
285 }
273 286
274 gaim_signal_emit(gaim_conversations_get_handle(), "sent-chat-msg", 287 gaim_signal_emit(gaim_conversations_get_handle(), "sent-chat-msg",
275 gaim_conversation_get_account(conv), sent, 288 gaim_conversation_get_account(conv), sent,
276 gaim_conv_chat_get_id(GAIM_CONV_CHAT(conv))); 289 gaim_conv_chat_get_id(GAIM_CONV_CHAT(conv)));
277 } 290 }