Closed Bug 23015 Opened 25 years ago Closed 25 years ago

Need msgdb method to mark thread read

Categories

(MailNews Core :: Database, defect, P3)

All
Windows NT
defect

Tracking

(Not tracked)

VERIFIED FIXED

People

(Reporter: Bienvenu, Assigned: Bienvenu)

Details

I need to add a method to nsMsgDatabase which marks all the messages in a thread
read.
Status: NEW → ASSIGNED
Target Milestone: M14
accepting
checked in nsMsgDabase::MarkThreadRead(nsIMsgThread, nsMsgKeyArray thoseMarked)
Status: ASSIGNED → RESOLVED
Closed: 25 years ago
Resolution: --- → FIXED
QA Contact: lchiang → ppandit
Mark as verified

NS_IMETHODIMP
1359 nsMsgDatabase::MarkThreadRead(nsIMsgThread *thread, nsIDBChangeListener 
*instigator, nsMsgKeyArray *thoseMarked)
1360 {
1361     if (!thread)
1362         return NS_ERROR_NULL_POINTER;
1363     nsresult rv = NS_OK;
1364 
1365     PRUint32 numChildren;
1366     thread->GetNumChildren(&numChildren);
1367     for (PRUint32 curChildIndex = 0; curChildIndex < numChildren; 
curChildIndex++)
1368     {
1369         nsCOMPtr <nsIMsgDBHdr> child;
1370 
1371         rv = thread->GetChildAt(curChildIndex, getter_AddRefs(child));
1372         if (NS_SUCCEEDED(rv) && child)
1373         {
1374             PRBool isRead = PR_TRUE;
1375             IsHeaderRead(child, &isRead);
1376             if (!isRead)
1377             {
1378                 if (thoseMarked)
1379                 {
1380                     nsMsgKey key;
1381                     if (NS_SUCCEEDED(child->GetMessageKey(&key)))
1382                         thoseMarked->Add(key);
1383                 }
1384                 MarkHdrRead(child, PR_TRUE, instigator);
1385             }
1386         }
1387     }
1388 
1389     return rv;
1390 }
Status: RESOLVED → VERIFIED
Product: MailNews → Core
Product: Core → MailNews Core
You need to log in before you can comment on or make changes to this bug.