From 42c221f30451ace73acc29d034d3790131dc47e0 Mon Sep 17 00:00:00 2001 From: Michael M Slusarz Date: Sun, 22 Feb 2009 00:59:39 -0700 Subject: [PATCH] Fix seen flagging. Also, fix setting seen flag on server if user manually set unseen flag on message viewed in preview pane. --- imp/js/src/DimpBase.js | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) diff --git a/imp/js/src/DimpBase.js b/imp/js/src/DimpBase.js index bb84024b7..d3da2ebaf 100644 --- a/imp/js/src/DimpBase.js +++ b/imp/js/src/DimpBase.js @@ -875,6 +875,12 @@ var DimpBase = { pp_uid = data.imapuid + data.view; if (this.ppfifo.indexOf(pp_uid) != -1) { + // There is a chance that the message may have been marked + // as unseen since first being viewed. If so, we need to + // explicitly flag as seen here. + if (data.bg.indexOf('unseen') != -1) { + this.flag('seen'); + } return this._loadPreviewCallback(this.ppcache[pp_uid]); } } @@ -2093,7 +2099,7 @@ var DimpBase = { args = { view: this.folder, flags: [ '-\\seen' ].toJSON() }; if (action == 'seen') { unseenstatus = 0; - args.flags = [ '\\seen' ]; + args.flags = [ '\\seen' ].toJSON(); } obs = vs.get('dataob'); if (obs.size()) { -- 2.11.0