From 04986511e537b4a5d90cc13f63580984e6fa1318 Mon Sep 17 00:00:00 2001 From: Danielle Madeley Date: Fri, 20 May 2011 13:02:45 +1000 Subject: Add an icon to edited messages Currently this is using "format-text-direction-ltr" which is a crappy choice. We should ask for a better icon. Also, this should really be implemented as a class, so that the icon can change with the theme. Or be made part of the Adium theme, or something. Basically this is kludgey. --- libempathy-gtk/empathy-theme-adium.c | 28 ++++++++++++++++++++++++++++ 1 file changed, 28 insertions(+) (limited to 'libempathy-gtk/empathy-theme-adium.c') diff --git a/libempathy-gtk/empathy-theme-adium.c b/libempathy-gtk/empathy-theme-adium.c index 14a399803..a4df12d58 100644 --- a/libempathy-gtk/empathy-theme-adium.c +++ b/libempathy-gtk/empathy-theme-adium.c @@ -1036,6 +1036,7 @@ theme_adium_edit_message (EmpathyChatView *view, WebKitDOMElement *span; gchar *id, *parsed_body; gchar *tooltip, *timestamp; + GtkIconInfo *icon_info; GError *error = NULL; if (priv->pages_loading != 0) { @@ -1088,6 +1089,33 @@ theme_adium_edit_message (EmpathyChatView *view, g_free (tooltip); g_free (timestamp); + /* mark this message as edited */ + icon_info = gtk_icon_theme_lookup_icon (gtk_icon_theme_get_default (), + EMPATHY_IMAGE_EDIT_MESSAGE, 16, 0); + + if (icon_info != NULL) { + /* set the icon as a background image using CSS + * FIXME: the icon won't update in response to theme changes */ + gchar *style = g_strdup_printf ( + "background-image:url('%s');" + "background-repeat:no-repeat;" + "background-position:left center;" + "padding-left:19px;", /* 16px icon + 3px padding */ + gtk_icon_info_get_filename (icon_info)); + + webkit_dom_element_set_attribute (span, "style", style, &error); + + if (error != NULL) { + DEBUG ("Error setting element style: %s", + error->message); + g_clear_error (&error); + /* not fatal */ + } + + g_free (style); + gtk_icon_info_free (icon_info); + } + goto finally; except: -- cgit v1.2.3