comparison pidgin-twitter.c @ 91:2b7ef3538cd3

- Fix type of 'flag' of writing_im_cb - Support a function which displays icons of sent messages via IM.
author Konosuke Watanabe <sasugaanija@gmail.com>
date Sun, 06 Jul 2008 17:43:44 +0900
parents fb9831fae969
children 7f20a61e98ad
comparison
equal deleted inserted replaced
85:fb9831fae969 91:2b7ef3538cd3
372 } 372 }
373 } 373 }
374 } 374 }
375 375
376 if (!error) { 376 if (!error) {
377 gchar *m = NULL;
378 const char *screen_name = purple_prefs_get_string(OPT_SCREEN_NAME);
379 if (screen_name)
380 m = g_strdup_printf("%s: %s", screen_name, tm->status);
381 else
382 m = "";
383
384 purple_conv_im_write(conv->u.im, 377 purple_conv_im_write(conv->u.im,
385 purple_account_get_username(tm->account), 378 purple_account_get_username(tm->account),
386 m, PURPLE_MESSAGE_SEND, tm->time); 379 tm->status, PURPLE_MESSAGE_SEND, tm->time);
387
388 g_free(m);
389 } else { 380 } else {
390 gchar *m; 381 gchar *m;
391 m = g_strdup_printf("%s<BR>%s", 382 m = g_strdup_printf("%s<BR>%s",
392 msg, tm->status); 383 msg, tm->status);
393 /* FIXME: too strong. it should be more smart */ 384 /* FIXME: too strong. it should be more smart */
629 g_match_info_free(match_info); 620 g_match_info_free(match_info);
630 } 621 }
631 622
632 static gboolean 623 static gboolean
633 writing_im_cb(PurpleAccount *account, char *sender, char **buffer, 624 writing_im_cb(PurpleAccount *account, char *sender, char **buffer,
634 PurpleConversation *conv, int *flags, void *data) 625 PurpleConversation *conv, int flags, void *data)
635 { 626 {
636 twitter_debug("called\n"); 627 twitter_debug("called\n");
637 628
638 gint service = get_service_type(conv); 629 gint service = get_service_type(conv);
639 630
640 /* check if the conversation is between twitter */ 631 /* check if the conversation is between twitter */
641 if(service == unknown_service) 632 if(service == unknown_service)
642 return FALSE; 633 return FALSE;
634
635 /* Add screen_name if the current message is posted by owner */
636 if (flags & PURPLE_MESSAGE_SEND) {
637 gchar *m = NULL;
638 const char *screen_name = purple_prefs_get_string(OPT_SCREEN_NAME);
639 if (screen_name) {
640 m = g_strdup_printf("%s: %s", screen_name, *buffer);
641 g_free(*buffer);
642 *buffer = m;
643 }
644 }
643 645
644 /* strip all markups */ 646 /* strip all markups */
645 strip_markup(buffer); 647 strip_markup(buffer);
646 648
647 /* playsound */ 649 /* playsound */