int hotkey;
int led;
int osd;
+ int unread_is_new;
};
struct option_node {
o->hotkey = -1;
o->led = -1;
o->osd = -1;
+ o->unread_is_new = -1;
}
static void
MERGE(hotkey);
MERGE(led);
MERGE(osd);
+ MERGE(unread_is_new);
}
}
if (!buf[0])
break;
if (!strncasecmp(buf, "Status:", 7))
- new = 0;
+ {
+ if (!b->o.unread_is_new || strchr(buf + 7, 'R'))
+ new = 0;
+ }
else if (!strncasecmp(buf, "X-Status:", 9) && strchr(buf+9, 'F'))
flagged = 1;
else if (!strncasecmp(buf, "From:", 5))
h\t\t\tHide from display\n\
l<led>\t\t\tLight a keyboard led (1-9) if running on X display\n\
m\t\t\tShow mailbox name of the sender\n\
+o\t\t\tCount old, but unread messages as new\n\
p\t\t\tShow personal info (full name) of the sender\n\
s\t\t\tShow message snippets\n\
t\t\t\tHighlight the entry\n\
case 'm':
o->sender_mbox = value;
break;
+ case 'o':
+ o->unread_is_new = value;
+ break;
case 'p':
o->sender_personal = value;
break;