Indicate new messages arriving in scrolled conversation list
We've had a few requests now (#14 (closed), #51 (closed)) to make the conversation list scroll up to new messages when they arrive, typically in the Inbox, and something along these lines seems to have been implemented in the past, but clearly no longer works as desired. We do this when clicking on a desktop notification, but people may not use them or not see the notification.
The primary use case seems to be to make it obvious that new mail has arrived when coming back to Geary after a while and the Inbox is already selected. Some care needs to be taken however, since if we scroll while the user is actually doing something with the list they'll get annoyed if we lose their place in the conversation list.
Some options include:
- Don't scroll the list, but indicate there is new mail further up. This could be achieved using a HUD overlay button/label at the top of the list that scrolls when you click on it. This would automatically disappear if the user manually scrolls, also.
- Scroll the list, but only when Geary is not focused, i.e. in the background.
- Some other obvious means of indicating there is new unread mail.
The first is my preferred option, because it explicitly states what happened, doesn't disturb people when they are in the middle of using the list, and gives them an easy means of getting to the new mail. The second is a bit more surprising, and we'd only be guessing that the user isn't in the middle of something if they are working in both Geary and another app at the same time, and happen to be in the other app when new mail arrives. I would welcome other suggestions as well.
This should ideally be implemented as part of https://bugzilla.gnome.org/show_bug.cgi?id=730682