Thanks, Gary. I think you’ve nailed the design thinking that’s caused this problem. But it is a very real problem.
The issue isn’t whether a mail gets _marked_ as read
I just checked behavior again, to be fully accurate,and…
The issue _is_ that all mail that is a) at the top of the queue and b) has been marked read, will be suddently removed from Unread mail as soon as a Refresh runs, auto or manual!
Thus, if you are still reading it, the message that’s timed out to not-Unread status disappears from your view!
I think I can promise that this is not generally desirable behavior. It would be as if your Unread message disappeared once your set timeout for Unread completes, however short or long. The only difference is that it takes that state plus the random occurrence of a Refresh to cause your reading to be suddenly terminated.
Because this is the sequence, we can’t work successfully around it by increasing the Unread timeout, though I’ve seen that suggested. And anyway, if we make that longer, then we lose any ability to scan and click the next to go rapidly through messages, which is essential. Any alternative then involves extra clicks and selections on each message just to dismiss it. Hope you visualize, and see this is quite counter to all the ways eM Client is trying to help and streamline mail activities.
I think the fix is very simple. Let me justify it, though.
in almost every case, it is in fact a quite useful behavior that messages once on the Unread queue do _not_ disappear from it, until you click out of that queue.
Logically, yes, a ‘read’ message is no longer Unread. But indeed in real life you may well want to refer back to it in the reading session. And you certainly want it to keep showing while your reading, quite possibly interrupted by a phone call, IM, etc., so that you can pick up right away and finish that same message’s consideration.
Leaving the Unread queue’s view is very natural, whether closing eM Client, closing it to the lingering and alerting symbol on the Windows toolbar righthand icon list, or just clicking to some other ability of eM Client. Then it’s fine to clear any no longer Unread messages from the queue. It can be expected.
So the only code change necessary is to _not_ clear no-longer-Unread-marked messages from the Unread queue, so long as the person is using that. Disconnect the event etc. from the Refresh, whether it is automatic of manual, from doing this. You can use manual Refresh to test the behavior.
True also, we often want to preserve current behavior even if offering another or re-thought one, for all the reasons. So, the extra step is to add a checkbox item to eM Client’s Tools | Settings | Mail area, controlling this. It’s still very small in terms of programmer work
Now you can keep what you have, and also cater nicely to a pretty evident pattern, not snatching away the current mail being read, which I kind of think will appeal to many persons.
I hope I’ve explained well enough, and that everyone involved will see this through the (paying in this case) customer’s eyes.
On professional experience, I feel this change will add real merit to eM Client, along with all the other things you’ve designed innto make this effective tool, as have let you know I particularly appreciate.