Closed Bug 472137 Opened 15 years ago Closed 15 years ago

cross folder views don't update flags when msg flags changed outside the view

Categories

(MailNews Core :: Backend, defect)

defect
Not set
normal

Tracking

(Not tracked)

RESOLVED FIXED
Thunderbird 3.0b2

People

(Reporter: Bienvenu, Assigned: Bienvenu)

References

Details

Attachments

(1 file)

Attached patch proposed fixSplinter Review
If a message is marked read w/o going through the view command, cross folder saved searches don't invalidate the row or update the flag correctly. E.g., if you have a cross-folder saved search open with unread messages in a folder, and then use the folder pane context menu to mark the messages in that folder read, the messages don't redisplayed as read in the thread pane until you mouse over them. The latest fix for bug 313227 also exposes this issue.

The fix is to propagate the OnHdrChanged notification to the base view class, which checks for an instigator other than itself, and does the work to update the view when it detects one. I also had to change nsMsgDBView::OnHdrChanged to use FindHdr instead of FindKey so that cross-folder views wouldn't get confused by duplicate keys. The non-cross-folder views FindHdr impl turns around and calls FindKey directly, so only cross-folder views are affected by that change.

There's an unrelated fix to prevent a crash trying to get a custom column handler that's not in our array, that's been sitting in my tree.
Flags: blocking-thunderbird3+
Attachment #355410 - Flags: superreview?(bugzilla)
Attachment #355410 - Flags: review?(bugzilla)
Attachment #355410 - Flags: superreview?(bugzilla)
Attachment #355410 - Flags: superreview+
Attachment #355410 - Flags: review?(bugzilla)
Attachment #355410 - Flags: review+
fixed
Status: NEW → RESOLVED
Closed: 15 years ago
Resolution: --- → FIXED
You need to log in before you can comment on or make changes to this bug.