On 08 May 2015, at 18:24, Panayiotis Fafakos <pfaf@wisdomsoftware.net> wrote:
Do we have a way to keep the user \Seen flags in public folders when an email is moved in another folder?
Sample test to reproduce: Step a - UserA and UserB have both read the email in PublicFolderA. Step b - UserA moves the email to PublicFolderB. UserA still sees the email as read (with the \Seen flag), this is expected behaviour and we are ok with this. Step c - UserB sees the email in PublicFolderB as an unread message!? He is puzzled since he has already read this message and asks why this is happening. Can we correct this behaviour?
No, there's no way to fix this without major changes to how Dovecot works.
Per-user seen flags are stored in private per-user index files. When user A moves mail to another folder the shared index and user A's index are updated to copy the flags. User A doesn't know what other users might have the folder accessible (and especially both source and destination folder). Even if it did know, now moving a mail might involve updating a lot of indexes every time a mail is moved, which is way too slow.
One possible future solution would be to move more towards GMail-like labels instead of folders. We have beginnings of such code. I'm not sure yet how that could be made to work with shared folders.