aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
-rw-r--r--mail/ChangeLog3
-rw-r--r--mail/mail-display.c18
2 files changed, 18 insertions, 3 deletions
diff --git a/mail/ChangeLog b/mail/ChangeLog
index b99183261b..a9ff918e9e 100644
--- a/mail/ChangeLog
+++ b/mail/ChangeLog
@@ -1,5 +1,8 @@
2003-05-20 Larry Ewing <lewing@ximian.com>
+ * mail-display.c: filter notification events to keep the redisplay
+ count down.
+
* mail-composer-prefs.c: remove references to gtkhtml property
manager. Connect to missing settings.
diff --git a/mail/mail-display.c b/mail/mail-display.c
index fe35dec71c..45b7000f69 100644
--- a/mail/mail-display.c
+++ b/mail/mail-display.c
@@ -2653,10 +2653,22 @@ static void
display_notify (GConfClient *gconf, guint cnxn_id, GConfEntry *entry, gpointer data)
{
MailDisplay *md = data;
+ gchar *tkey;
+
+ g_return_if_fail (entry != NULL);
+ g_return_if_fail (gconf_entry_get_key (entry) != NULL);
+ g_return_if_fail (gconf_entry_get_value (entry) != NULL);
+
+ tkey = strrchr (entry->key, '/');
- /* this should really check which setting has changed but it is late */
- gtk_html_set_animate (md->html, gconf_client_get_bool (gconf, "/apps/evolution/mail/display/animate_images", NULL));
- mail_display_queue_redisplay ((MailDisplay *)data);
+ g_return_if_fail (tkey != NULL);
+
+ if (!strcmp (tkey, "/animate_images")) {
+ gtk_html_set_animate (md->html, gconf_value_get_bool (gconf_entry_get_value(entry)));
+ } else if (!strcmp (tkey, "/citation_color")
+ || !strcmp (tkey, "/mark_citations")) {
+ mail_display_queue_redisplay (md);
+ }
}
GtkWidget *