mirror of
https://git.notmuchmail.org/git/notmuch
synced 2024-11-28 05:34:11 +01:00
emacs/tree use notmuch-show-single-message
This is more efficient than notmuch-show-only-matching-messages, since we do not parse the potentially large thread structure to find a single message. This is only a partial fix for notmuch-tree view, because displaying the thread structure in the tree-mode window still crashes on long threads. It is however enough to make unthreaded view handle long threads.
This commit is contained in:
parent
563b2a0032
commit
37f84d6d21
2 changed files with 4 additions and 3 deletions
|
@ -575,7 +575,7 @@ NOT change the database."
|
||||||
(with-selected-window notmuch-tree-message-window
|
(with-selected-window notmuch-tree-message-window
|
||||||
(let (;; Since we are only displaying one message do not indent.
|
(let (;; Since we are only displaying one message do not indent.
|
||||||
(notmuch-show-indent-messages-width 0)
|
(notmuch-show-indent-messages-width 0)
|
||||||
(notmuch-show-only-matching-messages t)
|
(notmuch-show-single-message t)
|
||||||
;; Ensure that `pop-to-buffer-same-window' uses the
|
;; Ensure that `pop-to-buffer-same-window' uses the
|
||||||
;; window we want it to use.
|
;; window we want it to use.
|
||||||
(display-buffer-overriding-action
|
(display-buffer-overriding-action
|
||||||
|
@ -599,7 +599,9 @@ NOT change the database."
|
||||||
(when id
|
(when id
|
||||||
;; We close the window to kill off un-needed buffers.
|
;; We close the window to kill off un-needed buffers.
|
||||||
(notmuch-tree-close-message-window)
|
(notmuch-tree-close-message-window)
|
||||||
(notmuch-show id))))
|
;; n-s-s-m is buffer local, so use inner let.
|
||||||
|
(let ((notmuch-show-single-message t))
|
||||||
|
(notmuch-show id)))))
|
||||||
|
|
||||||
(defun notmuch-tree-show-message (arg)
|
(defun notmuch-tree-show-message (arg)
|
||||||
"Show the current message.
|
"Show the current message.
|
||||||
|
|
|
@ -26,7 +26,6 @@ test_emacs '(let ((max-lisp-eval-depth 10))
|
||||||
test_expect_equal_file EXPECTED.unthreaded OUTPUT
|
test_expect_equal_file EXPECTED.unthreaded OUTPUT
|
||||||
|
|
||||||
test_begin_subtest "message from large thread (status)"
|
test_begin_subtest "message from large thread (status)"
|
||||||
test_subtest_known_broken
|
|
||||||
output=$(test_emacs '(let ((max-lisp-eval-depth 10))
|
output=$(test_emacs '(let ((max-lisp-eval-depth 10))
|
||||||
(notmuch-unthreaded "subject:large-thread")
|
(notmuch-unthreaded "subject:large-thread")
|
||||||
(notmuch-test-wait)
|
(notmuch-test-wait)
|
||||||
|
|
Loading…
Reference in a new issue