[geary] Don't show Mark as Unread when it'd be a no-op
- From: Charles Lindsay <clindsay src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [geary] Don't show Mark as Unread when it'd be a no-op
- Date: Fri, 14 Mar 2014 00:05:34 +0000 (UTC)
commit 9f047ce9c2603cd335f8cd1acee292f0c6a38d8f
Author: Charles Lindsay <chaz yorba org>
Date: Thu Mar 13 17:03:29 2014 -0700
Don't show Mark as Unread when it'd be a no-op
Closes: bgo #726274
src/client/application/geary-controller.vala | 8 +++++++-
1 files changed, 7 insertions(+), 1 deletions(-)
---
diff --git a/src/client/application/geary-controller.vala b/src/client/application/geary-controller.vala
index f82f56e..01b2d47 100644
--- a/src/client/application/geary-controller.vala
+++ b/src/client/application/geary-controller.vala
@@ -1423,7 +1423,13 @@ public class GearyController : Geary.BaseObject {
foreach (Geary.App.Conversation conversation in selected_conversations) {
if (conversation.is_unread())
unread_selected = true;
- if (conversation.has_any_read_message())
+
+ // Only check the messages that "Mark as Unread" would mark, so we
+ // don't add the menu option and have it not do anything.
+ Geary.Email? latest = conversation.get_latest_email(
+ Geary.App.Conversation.Location.IN_FOLDER_OUT_OF_FOLDER);
+ if (latest != null && latest.email_flags != null
+ && !latest.email_flags.contains(Geary.EmailFlags.UNREAD))
read_selected = true;
if (conversation.is_flagged()) {
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]