diff options
author | Milan Crha <mcrha@redhat.com> | 2011-01-19 01:02:03 +0800 |
---|---|---|
committer | Milan Crha <mcrha@redhat.com> | 2011-01-19 01:02:03 +0800 |
commit | d6ce64dc1925f5efb9fdfbc503400b7def2e7cfb (patch) | |
tree | d5cc802c7d3bb8b78ed17686587f08b2c06a2631 | |
parent | d7bfcbbde7eed54d83ab8f6cf384691cba144dd4 (diff) | |
download | gsoc2013-evolution-d6ce64dc1925f5efb9fdfbc503400b7def2e7cfb.tar.gz gsoc2013-evolution-d6ce64dc1925f5efb9fdfbc503400b7def2e7cfb.tar.zst gsoc2013-evolution-d6ce64dc1925f5efb9fdfbc503400b7def2e7cfb.zip |
Bug #633788 - Mail plugin's update-actions handler is never called
-rw-r--r-- | modules/mail/e-mail-shell-view-private.c | 19 | ||||
-rw-r--r-- | plugins/mailing-list-actions/mailing-list-actions.c | 3 |
2 files changed, 21 insertions, 1 deletions
diff --git a/modules/mail/e-mail-shell-view-private.c b/modules/mail/e-mail-shell-view-private.c index a4e74c32ad..6a15f4ed07 100644 --- a/modules/mail/e-mail-shell-view-private.c +++ b/modules/mail/e-mail-shell-view-private.c @@ -387,6 +387,20 @@ mail_shell_view_reader_changed_cb (EMailShellView *mail_shell_view, } static void +mail_shell_view_reader_update_actions_cb (EMailReader *reader, + guint32 state, + EMailShellView *mail_shell_view) +{ + EMailShellContent *mail_shell_content; + + g_return_if_fail (mail_shell_view != NULL); + g_return_if_fail (mail_shell_view->priv != NULL); + + mail_shell_content = mail_shell_view->priv->mail_shell_content; + e_mail_reader_update_actions (E_MAIL_READER (mail_shell_content), state); +} + +static void mail_shell_view_prepare_for_quit_done_cb (CamelFolder *folder, gpointer user_data) { @@ -608,6 +622,11 @@ e_mail_shell_view_private_constructed (EMailShellView *mail_shell_view) mail_shell_view, G_CONNECT_SWAPPED); g_signal_connect_object ( + e_mail_shell_content_get_mail_view (mail_shell_content), "update-actions", + G_CALLBACK (mail_shell_view_reader_update_actions_cb), + mail_shell_view, 0); + + g_signal_connect_object ( reader, "folder-loaded", G_CALLBACK (e_mail_view_update_view_instance), mail_view, G_CONNECT_SWAPPED); diff --git a/plugins/mailing-list-actions/mailing-list-actions.c b/plugins/mailing-list-actions/mailing-list-actions.c index fd3ae6c0fa..8090c21063 100644 --- a/plugins/mailing-list-actions/mailing-list-actions.c +++ b/plugins/mailing-list-actions/mailing-list-actions.c @@ -348,7 +348,8 @@ update_actions_cb (EMailReader *reader, { gboolean sensitive; - sensitive = (state & E_MAIL_READER_SELECTION_IS_MAILING_LIST); + sensitive = (state & E_MAIL_READER_SELECTION_IS_MAILING_LIST) != 0 + && (state & E_MAIL_READER_SELECTION_SINGLE) != 0; gtk_action_group_set_sensitive (action_group, sensitive); } |