[evolution/gnome-2-30] Bug #611560 - 'Mark as junk' should be disabled in junk folder
- From: Milan Crha <mcrha src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [evolution/gnome-2-30] Bug #611560 - 'Mark as junk' should be disabled in junk folder
- Date: Mon, 3 May 2010 19:40:06 +0000 (UTC)
commit 0fb409b6c5c18c43b49bf18f4a52c9883f6e2ab2
Author: Milan Crha <mcrha redhat com>
Date: Mon May 3 21:39:09 2010 +0200
Bug #611560 - 'Mark as junk' should be disabled in junk folder
mail/e-mail-reader.c | 6 +++++-
mail/e-mail-reader.h | 3 ++-
2 files changed, 7 insertions(+), 2 deletions(-)
---
diff --git a/mail/e-mail-reader.c b/mail/e-mail-reader.c
index d238d50..53d45fd 100644
--- a/mail/e-mail-reader.c
+++ b/mail/e-mail-reader.c
@@ -2314,7 +2314,7 @@ mail_reader_update_actions (EMailReader *reader)
action_name = "mail-mark-junk";
sensitive = selection_has_not_junk_messages;
action = e_mail_reader_get_action (reader, action_name);
- gtk_action_set_sensitive (action, sensitive);
+ gtk_action_set_sensitive (action, sensitive && !(state & E_MAIL_READER_FOLDER_IS_JUNK));
action_name = "mail-mark-notjunk";
sensitive = selection_has_junk_messages;
@@ -2758,6 +2758,7 @@ e_mail_reader_check_state (EMailReader *reader)
gboolean drafts_or_outbox;
gboolean store_supports_vjunk = FALSE;
gboolean is_mailing_list;
+ gboolean is_junk_folder = FALSE;
guint32 state = 0;
guint ii;
@@ -2770,6 +2771,7 @@ e_mail_reader_check_state (EMailReader *reader)
if (folder != NULL) {
store = CAMEL_STORE (folder->parent_store);
store_supports_vjunk = (store->flags & CAMEL_STORE_VJUNK);
+ is_junk_folder = (folder->folder_flags & CAMEL_FOLDER_IS_JUNK) != 0;
}
drafts_or_outbox =
@@ -2885,6 +2887,8 @@ e_mail_reader_check_state (EMailReader *reader)
state |= E_MAIL_READER_SELECTION_HAS_UNREAD;
if (is_mailing_list)
state |= E_MAIL_READER_SELECTION_IS_MAILING_LIST;
+ if (is_junk_folder)
+ state |= E_MAIL_READER_FOLDER_IS_JUNK;
em_utils_uids_free (uids);
diff --git a/mail/e-mail-reader.h b/mail/e-mail-reader.h
index a79d7f5..b724d6e 100644
--- a/mail/e-mail-reader.h
+++ b/mail/e-mail-reader.h
@@ -75,7 +75,8 @@ enum {
E_MAIL_READER_SELECTION_HAS_UNDELETED = 1 << 12,
E_MAIL_READER_SELECTION_HAS_UNIMPORTANT = 1 << 13,
E_MAIL_READER_SELECTION_HAS_UNREAD = 1 << 14,
- E_MAIL_READER_SELECTION_IS_MAILING_LIST = 1 << 15
+ E_MAIL_READER_SELECTION_IS_MAILING_LIST = 1 << 15,
+ E_MAIL_READER_FOLDER_IS_JUNK = 1 << 16
};
struct _EMailReaderIface {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]