Chris,
Could you record the app's debug log, for an hour or so?
If new messages and deletes are pushing through, it means my app's connection to the Gmail server is alive and well.
But as far as message flags go... sorry if it's going to be a bit more info than you might have wanted, but the story is:
- Gmail does not send changes to message flags over IMAP IDLE. I've seen a mail / newsgroup / forum exchange from 2007 where a Google engineer is saying "the spec doesn't *require* us to implement it, so we didn't and we won't" (a little silly oversight -- or intentional decision to support the native Gmail app? you decide).
- On the other hand, Gmail sends "keepalive" messages every five minutes, basically an "I'm still here" type of thing... Which I use as an opportunity to update the flags of recent messages (including the read/unread states).
- And yet, I've seen debug logs from users where Gmail was *not* sending those keepalive messages... Without them, my app doesn't have any trigger at all to sync flags.
If you wanted me to investigate this further, I could, if you recorded a debug log, at least 3-4 hours long, which would include messages changing their read / unread states.
http://www.aqua-mail.com/?page_id=232One other suggestion is to decrease the "IMAP Push session duration" from 1 hour to 30 minutes, this is under "Account options", then "IMAP, other". This will make the app resync message flags every 30 minutes or so.