summaryrefslogtreecommitdiff
path: root/program/steps/mail/show.inc
diff options
context:
space:
mode:
authorAleksander Machniak <alec@alec.pl>2014-06-03 12:17:39 +0200
committerAleksander Machniak <alec@alec.pl>2014-06-03 12:17:39 +0200
commitd28daec9181534aea9520906bd3b660dad3f2bb0 (patch)
treea79c46af9019d69b7255c5458ea617ac52f87057 /program/steps/mail/show.inc
parentbf743b7681f24c5128c7ceb9c8176a0ab15fa169 (diff)
Fix so message list and counters are updated when a message is opened in new window (#1489919)
Diffstat (limited to 'program/steps/mail/show.inc')
-rw-r--r--program/steps/mail/show.inc7
1 files changed, 4 insertions, 3 deletions
diff --git a/program/steps/mail/show.inc b/program/steps/mail/show.inc
index beb2cc6e9..f1c10da3d 100644
--- a/program/steps/mail/show.inc
+++ b/program/steps/mail/show.inc
@@ -148,11 +148,14 @@ if ($uid) {
if (empty($MESSAGE->headers->flags['SEEN'])
&& ($RCMAIL->action == 'show' || ($RCMAIL->action == 'preview' && intval($RCMAIL->config->get('preview_pane_mark_read')) == 0))
) {
+ $RCMAIL->output->command('set_unread_message', $MESSAGE->uid, $mbox_name);
$RCMAIL->plugins->exec_hook('message_read', array(
'uid' => $MESSAGE->uid,
'mailbox' => $mbox_name,
'message' => $MESSAGE,
));
+
+ $set_seen_flag = true;
}
}
@@ -174,9 +177,7 @@ else
// mark message as read
-if ($MESSAGE && $MESSAGE->headers && empty($MESSAGE->headers->flags['SEEN']) &&
- ($RCMAIL->action == 'show' || ($RCMAIL->action == 'preview' && intval($RCMAIL->config->get('preview_pane_mark_read')) == 0))
-) {
+if (!empty($set_seen_flag)) {
if ($RCMAIL->storage->set_flag($MESSAGE->uid, 'SEEN')) {
if ($count = rcmail_get_unseen_count($mbox_name)) {
rcmail_set_unseen_count($mbox_name, $count - 1);