org: Fix: keep archived subtrees hidden after C-c C-k

* lisp/org.el (org-kill-note-or-show-branches): Hide archived
subtrees.

Report by Allen Li
https://lists.gnu.org/archive/html/emacs-orgmode/2019-12/msg00396.html
This commit is contained in:
Marco Wahl 2019-12-31 13:55:12 +01:00
parent c0c790eb9b
commit 524ccf3adb
2 changed files with 19 additions and 3 deletions

View File

@ -18012,9 +18012,15 @@ Move point to the beginning of first heading or end of buffer."
(let ((org-note-abort t))
(funcall org-finish-function))
(if (org-before-first-heading-p)
(org-show-branches-buffer)
(outline-hide-subtree)
(outline-show-branches))))
(progn
(org-show-branches-buffer)
(org-hide-archived-subtrees (point-min) (point-max)))
(let ((beg (progn (outline-back-to-heading) (point)))
(end (progn (outline-end-of-subtree) (point))))
(goto-char beg)
(outline-hide-subtree)
(outline-show-branches)
(org-hide-archived-subtrees beg end)))))
(defun org-delete-indentation (&optional arg)
"Join current line to previous and fix whitespace at join.

View File

@ -7257,6 +7257,16 @@ Contents
(org-set-visibility-according-to-property)
(invisible-p (point)))))
(ert-deftest test-org/visibility-show-branches ()
"Test visibility of inline archived subtrees."
(org-test-with-temp-text
"* Foo<point>
** Bar :ARCHIVE:
*** Baz
"
(org-kill-note-or-show-branches)
(should (org-invisible-p (- (point-max) 2)))))
;;; Yank and Kill