typedef struct {
GdkPixbuf *pixbuf;
- gchar *token;
+ gchar *filename;
} AvatarData;
static void
AvatarData *data = ptr;
g_object_unref (data->pixbuf);
- g_free (data->token);
+ g_free (data->filename);
g_slice_free (AvatarData, data);
}
avatar = empathy_contact_get_avatar (contact);
data = g_object_get_data (G_OBJECT (contact), "chat-view-avatar-cache");
if (data) {
- if (avatar && !tp_strdiff (avatar->token, data->token)) {
+ if (avatar && !tp_strdiff (avatar->filename, data->filename)) {
/* We have the avatar in cache */
return data->pixbuf;
}
return NULL;
}
- /* Insert new pixbuf in cache */
+ /* Insert new pixbuf in cache. We store the filename as it's unique
+ * for each version of an avatar, so we can use it to perform change
+ * detection (as above). */
data = g_slice_new0 (AvatarData);
- data->token = g_strdup (avatar->token);
+ data->filename = g_strdup (avatar->filename);
data->pixbuf = pixbuf;
g_object_set_data_full (G_OBJECT (contact), "chat-view-avatar-cache",
gboolean consecutive;
contact = empathy_message_get_sender (msg);
- name = empathy_contact_get_name (contact);
+ name = empathy_contact_get_alias (contact);
last_contact = empathy_chat_text_view_get_last_contact (view);
buffer = gtk_text_view_get_buffer (GTK_TEXT_VIEW (theme));
time_ = empathy_message_get_timestamp (msg);
gchar *body;
body = g_strdup_printf (" * %s %s",
- empathy_contact_get_name (sender),
+ empathy_contact_get_alias (sender),
empathy_message_get_body (message));
empathy_chat_text_view_append_body (EMPATHY_CHAT_TEXT_VIEW (view),
body,