diff options
| author | Lars Ingebrigtsen | 2019-09-27 01:14:01 +0200 |
|---|---|---|
| committer | Lars Ingebrigtsen | 2019-09-27 01:14:06 +0200 |
| commit | ff8a72fbe0f6e168e2871a53bbdaded4d0cc5612 (patch) | |
| tree | e45ee5710239f5237aa0ad5d2f16e730cd9b9972 | |
| parent | 7e6fc3842e54dadbc4b570ab138d831a7f988947 (diff) | |
| download | emacs-ff8a72fbe0f6e168e2871a53bbdaded4d0cc5612.tar.gz emacs-ff8a72fbe0f6e168e2871a53bbdaded4d0cc5612.zip | |
Tweak updating of readedness marks on the IMAP server
* lisp/gnus/nnimap.el (nnimap-request-set-mark): Ensure that
ticking/unticking also toggles readedness on the IMAP server
(bug#22590).
| -rw-r--r-- | lisp/gnus/nnimap.el | 11 |
1 files changed, 9 insertions, 2 deletions
diff --git a/lisp/gnus/nnimap.el b/lisp/gnus/nnimap.el index 6f2ebfb7fe6..363e4186cbc 100644 --- a/lisp/gnus/nnimap.el +++ b/lisp/gnus/nnimap.el | |||
| @@ -1163,6 +1163,12 @@ If LIMIT, first try to limit the search to the N last articles." | |||
| 1163 | ;; response. If they're successful, they're successful. | 1163 | ;; response. If they're successful, they're successful. |
| 1164 | (dolist (action actions) | 1164 | (dolist (action actions) |
| 1165 | (cl-destructuring-bind (range action marks) action | 1165 | (cl-destructuring-bind (range action marks) action |
| 1166 | ;; If we add/remove a tick mark, then do the same with the | ||
| 1167 | ;; readedness mark on the IMAP server. Other IMAP clients | ||
| 1168 | ;; can have marked messages without having them read, but | ||
| 1169 | ;; Gnus can't. | ||
| 1170 | (when (memq 'tick marks) | ||
| 1171 | (push 'read marks)) | ||
| 1166 | (let ((flags (nnimap-marks-to-flags marks))) | 1172 | (let ((flags (nnimap-marks-to-flags marks))) |
| 1167 | (when flags | 1173 | (when flags |
| 1168 | (setq sequence (nnimap-send-command | 1174 | (setq sequence (nnimap-send-command |
| @@ -1492,8 +1498,9 @@ If LIMIT, first try to limit the search to the N last articles." | |||
| 1492 | 1498 | ||
| 1493 | (defun nnimap-update-info (info marks) | 1499 | (defun nnimap-update-info (info marks) |
| 1494 | (cl-destructuring-bind (existing flags high low uidnext start-article | 1500 | (cl-destructuring-bind (existing flags high low uidnext start-article |
| 1495 | permanent-flags uidvalidity | 1501 | permanent-flags uidvalidity |
| 1496 | vanished highestmodseq) marks | 1502 | vanished highestmodseq) |
| 1503 | marks | ||
| 1497 | (cond | 1504 | (cond |
| 1498 | ;; Ignore groups with no UIDNEXT/marks. This happens for | 1505 | ;; Ignore groups with no UIDNEXT/marks. This happens for |
| 1499 | ;; completely empty groups. | 1506 | ;; completely empty groups. |