aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorMatthew Barnes <mbarnes@redhat.com>2008-06-21 05:11:15 +0800
committerMatthew Barnes <mbarnes@src.gnome.org>2008-06-21 05:11:15 +0800
commit552e93b4654853bd4d3dab11a1457d2d601f0dc5 (patch)
tree83851f84e6116201191dc31080246dad9dc72575
parent9bb344c1106b6df3260bb48313ec9e8a6de2fa7a (diff)
downloadgsoc2013-evolution-552e93b4654853bd4d3dab11a1457d2d601f0dc5.tar
gsoc2013-evolution-552e93b4654853bd4d3dab11a1457d2d601f0dc5.tar.gz
gsoc2013-evolution-552e93b4654853bd4d3dab11a1457d2d601f0dc5.tar.bz2
gsoc2013-evolution-552e93b4654853bd4d3dab11a1457d2d601f0dc5.tar.lz
gsoc2013-evolution-552e93b4654853bd4d3dab11a1457d2d601f0dc5.tar.xz
gsoc2013-evolution-552e93b4654853bd4d3dab11a1457d2d601f0dc5.tar.zst
gsoc2013-evolution-552e93b4654853bd4d3dab11a1457d2d601f0dc5.zip
** Fixes bug #538908
2008-06-20 Matthew Barnes <mbarnes@redhat.com> ** Fixes bug #538908 * composer/e-composer-actions.h: Define E_COMPOSER_ACTION_SEND_OPTIONS. * composer/e-msg-composer.c (msg_composer_account_changed_cb): Desensitize the "send-options" action unless we've selected an Exchange or GroupWise account. Based on a patch by Paul Bolle. svn path=/trunk/; revision=35660
-rw-r--r--composer/ChangeLog11
-rw-r--r--composer/e-composer-actions.h2
-rw-r--r--composer/e-msg-composer.c8
3 files changed, 21 insertions, 0 deletions
diff --git a/composer/ChangeLog b/composer/ChangeLog
index 4c0ee3a144..fa81691838 100644
--- a/composer/ChangeLog
+++ b/composer/ChangeLog
@@ -1,3 +1,14 @@
+2008-06-20 Matthew Barnes <mbarnes@redhat.com>
+
+ ** Fixes bug #538908
+
+ * e-composer-actions.h:
+ Define E_COMPOSER_ACTION_SEND_OPTIONS.
+
+ * e-msg-composer.c (msg_composer_account_changed_cb):
+ Desensitize the "send-options" action unless we've selected an
+ Exchange or GroupWise account. Based on a patch by Paul Bolle.
+
2008-06-13 Milan Crha <mcrha@redhat.com>
** Fix for bug #330597
diff --git a/composer/e-composer-actions.h b/composer/e-composer-actions.h
index 16058da9ec..ec31e32827 100644
--- a/composer/e-composer-actions.h
+++ b/composer/e-composer-actions.h
@@ -49,6 +49,8 @@
E_COMPOSER_ACTION ((composer), "security-menu")
#define E_COMPOSER_ACTION_SEND(composer) \
E_COMPOSER_ACTION ((composer), "send")
+#define E_COMPOSER_ACTION_SEND_OPTIONS(composer) \
+ E_COMPOSER_ACTION ((composer), "send-options")
#define E_COMPOSER_ACTION_SMIME_ENCRYPT(composer) \
E_COMPOSER_ACTION ((composer), "smime-encrypt")
#define E_COMPOSER_ACTION_SMIME_SIGN(composer) \
diff --git a/composer/e-msg-composer.c b/composer/e-msg-composer.c
index cc92fdf8b7..5d43fb9b2f 100644
--- a/composer/e-msg-composer.c
+++ b/composer/e-msg-composer.c
@@ -1669,6 +1669,7 @@ msg_composer_account_changed_cb (EMsgComposer *composer)
ESignature *signature;
EAccount *account;
gboolean active;
+ gboolean sensitive;
const gchar *cc_addrs = NULL;
const gchar *bcc_addrs = NULL;
const gchar *uid;
@@ -1702,6 +1703,13 @@ msg_composer_account_changed_cb (EMsgComposer *composer)
signature = uid ? mail_config_get_signature_by_uid (uid) : NULL;
e_composer_header_table_set_signature (table, signature);
+ /* XXX This should be done more generically. The composer
+ * should not know about particular account types. */
+ sensitive =
+ (strstr (account->transport->url, "exchange") != NULL) ||
+ (strstr (account->transport->url, "groupwise") != NULL);
+ gtk_action_set_sensitive (ACTION (SEND_OPTIONS), sensitive);
+
exit:
update_auto_recipients (table, UPDATE_AUTO_CC, cc_addrs);
update_auto_recipients (table, UPDATE_AUTO_BCC, bcc_addrs);