[prev in list] [next in list] [prev in thread] [next in thread]
List: kde-bugs-dist
Subject: [Bug 131098] IMAP - all messages are marked as new even "sent"
From: Carsten Burghardt <burghardt () kde ! org>
Date: 2006-07-23 21:00:55
Message-ID: 20060723210055.8072.qmail () ktown ! kde ! org
[Download RAW message or body]
------- You are receiving this mail because: -------
You are on the CC list for the bug, or are watching someone who is.
http://bugs.kde.org/show_bug.cgi?id=131098
burghardt kde org changed:
What |Removed |Added
----------------------------------------------------------------------------
Status|NEW |RESOLVED
Resolution| |FIXED
------- Additional Comments From burghardt kde org 2006-07-23 23:00 -------
SVN commit 565605 by burghard:
Revert Till's fix as it breaks the detection of read messages.
BUGS: 131098
CCMAIL: adam kde org
M +14 -6 kmfolderimap.cpp
--- branches/KDE/3.5/kdepim/kmail/kmfolderimap.cpp #565604:565605
@ -1383,13 +1383,21 @
void KMFolderImap::flagsToStatus(KMMsgBase *msg, int flags, bool newMsg)
{
const KMMsgStatus oldStatus = msg->status();
+ // Set flags if they are new
+ if ( (flags & 4) && (oldStatus & KMMsgStatusFlag) == 0 )
+ msg->setStatus( KMMsgStatusFlag );
+ if ( (flags & 2) && (oldStatus & KMMsgStatusReplied) == 0 )
+ msg->setStatus( KMMsgStatusReplied );
+ if ( (flags & 1) && (oldStatus & KMMsgStatusOld) == 0 )
+ msg->setStatus( KMMsgStatusOld );
+
// Toggle flags if they changed
- if ( ( (flags & 4) > 0 ) != ( (oldStatus & KMMsgStatusFlag) > 0 ) )
- msg->toggleStatus( KMMsgStatusFlag );
- if ( ( (flags & 2) > 0 ) != ( (oldStatus & KMMsgStatusReplied) > 0 ) )
- msg->toggleStatus( KMMsgStatusReplied );
- if ( ( (flags & 1) > 0 ) != ( (oldStatus & KMMsgStatusOld) > 0 ) )
- msg->toggleStatus( KMMsgStatusOld );
+// if ( ( (flags & 4) > 0 ) != ( (oldStatus & KMMsgStatusFlag) > 0 ) )
+// msg->toggleStatus( KMMsgStatusFlag );
+// if ( ( (flags & 2) > 0 ) != ( (oldStatus & KMMsgStatusReplied) > 0 ) )
+// msg->toggleStatus( KMMsgStatusReplied );
+// if ( ( (flags & 1) > 0 ) != ( (oldStatus & KMMsgStatusOld) > 0 ) )
+// msg->toggleStatus( KMMsgStatusOld );
// In case the message does not have the seen flag set, override our local
// notion that it is read. Otherwise the count of unread messages and the
[prev in list] [next in list] [prev in thread] [next in thread]
Configure |
About |
News |
Add a list |
Sponsored by KoreLogic