mirror of
git://git.sv.gnu.org/emacs.git
synced 2025-12-15 10:30:25 -08:00
Preserve header lines from derived modes in tabulated lists
* lisp/emacs-lisp/tabulated-list.el (tabulated-list-init-header): Preserve header line set by derived modes (bug#21025).
This commit is contained in:
parent
90c25b2452
commit
9de1177a1e
1 changed files with 7 additions and 2 deletions
|
|
@ -73,6 +73,11 @@ frames."
|
||||||
:type 'character
|
:type 'character
|
||||||
:version "27.1")
|
:version "27.1")
|
||||||
|
|
||||||
|
(defface tabulated-list-fake-header
|
||||||
|
'((t :overline t :underline t :weight bold))
|
||||||
|
"Face used on fake header lines."
|
||||||
|
:version "27.1")
|
||||||
|
|
||||||
;; The reason `tabulated-list-format' and other variables are
|
;; The reason `tabulated-list-format' and other variables are
|
||||||
;; permanent-local is to make it convenient to switch to a different
|
;; permanent-local is to make it convenient to switch to a different
|
||||||
;; major mode, switch back, and have the original Tabulated List data
|
;; major mode, switch back, and have the original Tabulated List data
|
||||||
|
|
@ -308,7 +313,6 @@ Populated by `tabulated-list-init-header'.")
|
||||||
(setq cols (apply 'concat (nreverse cols)))
|
(setq cols (apply 'concat (nreverse cols)))
|
||||||
(if tabulated-list-use-header-line
|
(if tabulated-list-use-header-line
|
||||||
(setq header-line-format cols)
|
(setq header-line-format cols)
|
||||||
(setq header-line-format nil)
|
|
||||||
(setq-local tabulated-list--header-string cols))))
|
(setq-local tabulated-list--header-string cols))))
|
||||||
|
|
||||||
(defun tabulated-list-print-fake-header ()
|
(defun tabulated-list-print-fake-header ()
|
||||||
|
|
@ -322,7 +326,8 @@ Do nothing if `tabulated-list--header-string' is nil."
|
||||||
(move-overlay tabulated-list--header-overlay (point-min) (point))
|
(move-overlay tabulated-list--header-overlay (point-min) (point))
|
||||||
(setq-local tabulated-list--header-overlay
|
(setq-local tabulated-list--header-overlay
|
||||||
(make-overlay (point-min) (point))))
|
(make-overlay (point-min) (point))))
|
||||||
(overlay-put tabulated-list--header-overlay 'face 'underline))))
|
(overlay-put tabulated-list--header-overlay
|
||||||
|
'face 'tabulated-list-fake-header))))
|
||||||
|
|
||||||
(defsubst tabulated-list-header-overlay-p (&optional pos)
|
(defsubst tabulated-list-header-overlay-p (&optional pos)
|
||||||
"Return non-nil if there is a fake header.
|
"Return non-nil if there is a fake header.
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue