Mercurial > pidgin.yaz
comparison pidgin/gtklog.c @ 25416:6e1967b0f90b
Change "screen name" to "username" or "buddy name" in a whole bunch of
places in the code. I've been using the definitions from the jabber
specs, where "user" is me and "buddy" is someone on my buddy list.
author | Mark Doliner <mark@kingant.net> |
---|---|
date | Mon, 26 Jan 2009 09:12:04 +0000 |
parents | 673abaf19f6e |
children | ee1ed5d16235 48ea900ee72a fe75cd926073 |
comparison
equal
deleted
inserted
replaced
25415:584063555949 | 25416:6e1967b0f90b |
---|---|
43 static void populate_log_tree(PidginLogViewer *lv); | 43 static void populate_log_tree(PidginLogViewer *lv); |
44 static PidginLogViewer *syslog_viewer = NULL; | 44 static PidginLogViewer *syslog_viewer = NULL; |
45 | 45 |
46 struct log_viewer_hash_t { | 46 struct log_viewer_hash_t { |
47 PurpleLogType type; | 47 PurpleLogType type; |
48 char *screenname; | 48 char *buddyname; |
49 PurpleAccount *account; | 49 PurpleAccount *account; |
50 PurpleContact *contact; | 50 PurpleContact *contact; |
51 }; | 51 }; |
52 | 52 |
53 static guint log_viewer_hash(gconstpointer data) | 53 static guint log_viewer_hash(gconstpointer data) |
55 const struct log_viewer_hash_t *viewer = data; | 55 const struct log_viewer_hash_t *viewer = data; |
56 | 56 |
57 if (viewer->contact != NULL) | 57 if (viewer->contact != NULL) |
58 return g_direct_hash(viewer->contact); | 58 return g_direct_hash(viewer->contact); |
59 | 59 |
60 return g_str_hash(viewer->screenname) + | 60 return g_str_hash(viewer->buddyname) + |
61 g_str_hash(purple_account_get_username(viewer->account)); | 61 g_str_hash(purple_account_get_username(viewer->account)); |
62 } | 62 } |
63 | 63 |
64 static gboolean log_viewer_equal(gconstpointer y, gconstpointer z) | 64 static gboolean log_viewer_equal(gconstpointer y, gconstpointer z) |
65 { | 65 { |
78 } else { | 78 } else { |
79 if (b->contact != NULL) | 79 if (b->contact != NULL) |
80 return FALSE; | 80 return FALSE; |
81 } | 81 } |
82 | 82 |
83 normal = g_strdup(purple_normalize(a->account, a->screenname)); | 83 normal = g_strdup(purple_normalize(a->account, a->buddyname)); |
84 ret = (a->account == b->account) && | 84 ret = (a->account == b->account) && |
85 !strcmp(normal, purple_normalize(b->account, b->screenname)); | 85 !strcmp(normal, purple_normalize(b->account, b->buddyname)); |
86 g_free(normal); | 86 g_free(normal); |
87 | 87 |
88 return ret; | 88 return ret; |
89 } | 89 } |
90 | 90 |
207 | 207 |
208 if (ht != NULL) { | 208 if (ht != NULL) { |
209 lv = g_hash_table_lookup(log_viewers, ht); | 209 lv = g_hash_table_lookup(log_viewers, ht); |
210 g_hash_table_remove(log_viewers, ht); | 210 g_hash_table_remove(log_viewers, ht); |
211 | 211 |
212 g_free(ht->screenname); | 212 g_free(ht->buddyname); |
213 g_free(ht); | 213 g_free(ht); |
214 } else | 214 } else |
215 syslog_viewer = NULL; | 215 syslog_viewer = NULL; |
216 | 216 |
217 purple_request_close_with_handle(lv); | 217 purple_request_close_with_handle(lv); |
554 log_preferences = _("Instant messages will only be logged if the \"Log all instant messages\" preference is enabled."); | 554 log_preferences = _("Instant messages will only be logged if the \"Log all instant messages\" preference is enabled."); |
555 } else if (ht->type == PURPLE_LOG_CHAT) { | 555 } else if (ht->type == PURPLE_LOG_CHAT) { |
556 if (!purple_prefs_get_bool("/purple/logging/log_chats")) | 556 if (!purple_prefs_get_bool("/purple/logging/log_chats")) |
557 log_preferences = _("Chats will only be logged if the \"Log all chats\" preference is enabled."); | 557 log_preferences = _("Chats will only be logged if the \"Log all chats\" preference is enabled."); |
558 } | 558 } |
559 g_free(ht->screenname); | 559 g_free(ht->buddyname); |
560 g_free(ht); | 560 g_free(ht); |
561 } | 561 } |
562 | 562 |
563 if(icon != NULL) | 563 if(icon != NULL) |
564 gtk_widget_destroy(icon); | 564 gtk_widget_destroy(icon); |
679 gtk_widget_show_all(lv->window); | 679 gtk_widget_show_all(lv->window); |
680 | 680 |
681 return lv; | 681 return lv; |
682 } | 682 } |
683 | 683 |
684 void pidgin_log_show(PurpleLogType type, const char *screenname, PurpleAccount *account) { | 684 void pidgin_log_show(PurpleLogType type, const char *buddyname, PurpleAccount *account) { |
685 struct log_viewer_hash_t *ht; | 685 struct log_viewer_hash_t *ht; |
686 PidginLogViewer *lv = NULL; | 686 PidginLogViewer *lv = NULL; |
687 const char *name = screenname; | 687 const char *name = buddyname; |
688 char *title; | 688 char *title; |
689 GdkPixbuf *prpl_icon; | 689 GdkPixbuf *prpl_icon; |
690 | 690 |
691 g_return_if_fail(account != NULL); | 691 g_return_if_fail(account != NULL); |
692 g_return_if_fail(screenname != NULL); | 692 g_return_if_fail(buddyname != NULL); |
693 | 693 |
694 ht = g_new0(struct log_viewer_hash_t, 1); | 694 ht = g_new0(struct log_viewer_hash_t, 1); |
695 | 695 |
696 ht->type = type; | 696 ht->type = type; |
697 ht->screenname = g_strdup(screenname); | 697 ht->buddyname = g_strdup(buddyname); |
698 ht->account = account; | 698 ht->account = account; |
699 | 699 |
700 if (log_viewers == NULL) { | 700 if (log_viewers == NULL) { |
701 log_viewers = g_hash_table_new(log_viewer_hash, log_viewer_equal); | 701 log_viewers = g_hash_table_new(log_viewer_hash, log_viewer_equal); |
702 } else if ((lv = g_hash_table_lookup(log_viewers, ht))) { | 702 } else if ((lv = g_hash_table_lookup(log_viewers, ht))) { |
703 gtk_window_present(GTK_WINDOW(lv->window)); | 703 gtk_window_present(GTK_WINDOW(lv->window)); |
704 g_free(ht->screenname); | 704 g_free(ht->buddyname); |
705 g_free(ht); | 705 g_free(ht); |
706 return; | 706 return; |
707 } | 707 } |
708 | 708 |
709 if (type == PURPLE_LOG_CHAT) { | 709 if (type == PURPLE_LOG_CHAT) { |
710 PurpleChat *chat; | 710 PurpleChat *chat; |
711 | 711 |
712 chat = purple_blist_find_chat(account, screenname); | 712 chat = purple_blist_find_chat(account, buddyname); |
713 if (chat != NULL) | 713 if (chat != NULL) |
714 name = purple_chat_get_name(chat); | 714 name = purple_chat_get_name(chat); |
715 | 715 |
716 title = g_strdup_printf(_("Conversations in %s"), name); | 716 title = g_strdup_printf(_("Conversations in %s"), name); |
717 } else { | 717 } else { |
718 PurpleBuddy *buddy; | 718 PurpleBuddy *buddy; |
719 | 719 |
720 buddy = purple_find_buddy(account, screenname); | 720 buddy = purple_find_buddy(account, buddyname); |
721 if (buddy != NULL) | 721 if (buddy != NULL) |
722 name = purple_buddy_get_contact_alias(buddy); | 722 name = purple_buddy_get_contact_alias(buddy); |
723 | 723 |
724 title = g_strdup_printf(_("Conversations with %s"), name); | 724 title = g_strdup_printf(_("Conversations with %s"), name); |
725 } | 725 } |
726 | 726 |
727 prpl_icon = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_MEDIUM); | 727 prpl_icon = pidgin_create_prpl_icon(account, PIDGIN_PRPL_ICON_MEDIUM); |
728 | 728 |
729 display_log_viewer(ht, purple_log_get_logs(type, screenname, account), | 729 display_log_viewer(ht, purple_log_get_logs(type, buddyname, account), |
730 title, gtk_image_new_from_pixbuf(prpl_icon), | 730 title, gtk_image_new_from_pixbuf(prpl_icon), |
731 purple_log_get_total_size(type, screenname, account)); | 731 purple_log_get_total_size(type, buddyname, account)); |
732 | 732 |
733 if (prpl_icon) | 733 if (prpl_icon) |
734 g_object_unref(prpl_icon); | 734 g_object_unref(prpl_icon); |
735 g_free(title); | 735 g_free(title); |
736 } | 736 } |