diff --git a/ChangeLog b/ChangeLog index d46b3e4b7..38d3bcff3 100644 --- a/ChangeLog +++ b/ChangeLog @@ -1,3 +1,13 @@ +2011-11-01 Wolfgang Sourdeau + + * OpenChange/MAPIStoreMailMessage.m (-setReadFlag:): implemented + basic method, only dealing with actual setting or unsetting of + "\Seen". + + * OpenChange/MAPIStoreCalendarMessage.m (-setReadFlag:): overriden + with dumb implementation, since it seems to be invoked on this + kind of object. + 2011-10-31 Wolfgang Sourdeau * OpenChange/MAPIStoreContactsAttachment.m diff --git a/OpenChange/MAPIStoreCalendarMessage.m b/OpenChange/MAPIStoreCalendarMessage.m index abae41f81..70efa4585 100644 --- a/OpenChange/MAPIStoreCalendarMessage.m +++ b/OpenChange/MAPIStoreCalendarMessage.m @@ -901,4 +901,9 @@ return newAttachment; } +- (int) setReadFlag: (uint8_t) flag +{ + return MAPISTORE_SUCCESS; +} + @end diff --git a/OpenChange/MAPIStoreMailMessage.m b/OpenChange/MAPIStoreMailMessage.m index 63106fdf6..7ab44bd2b 100644 --- a/OpenChange/MAPIStoreMailMessage.m +++ b/OpenChange/MAPIStoreMailMessage.m @@ -1535,6 +1535,14 @@ _compareBodyKeysByPriority (id entry1, id entry2, void *data) - (int) setReadFlag: (uint8_t) flag { + NSString *imapFlag = @"\\Seen"; + + /* TODO: notifications should probably be emitted from here */ + if (flag & CLEAR_READ_FLAG) + [sogoObject removeFlags: imapFlag]; + else + [sogoObject addFlags: imapFlag]; + return MAPISTORE_SUCCESS; }