Fix #195: Invalid face reference in persp-name.

This commit is contained in:
Vincent Zhang 2019-07-16 00:39:05 +08:00
parent bdbf45e690
commit fc7cf85f1c

View file

@ -1332,34 +1332,31 @@ Requires `eyebrowse-mode' to be enabled."
(fboundp 'get-current-persp))
(let* ((persp (get-current-persp))
(name (safe-persp-name persp))
(icon (if (and doom-modeline-icon doom-modeline-persp-name-icon)
(doom-modeline-icon-material "aspect_ratio" :v-adjust -0.225)
"#"))
(face (if (and persp
(not (persp-contain-buffer-p (current-buffer) persp)))
'doom-modeline-persp-buffer-not-in-persp
'doom-modeline-persp-name)))
'doom-modeline-persp-name))
(icon (if (and doom-modeline-icon doom-modeline-persp-name-icon)
(doom-modeline-icon-material "aspect_ratio" :v-adjust -0.225 :face face)
(propertize "#" 'face face))))
(unless (string-equal persp-nil-name name)
(concat
(doom-modeline-spc)
(propertize icon
'face `(:inherit ,(get-text-property 0 'face icon)
:inherit ,face))
(doom-modeline-vspc)
(propertize name
'face face
'help-echo "mouse-1: Switch perspective
(concat (doom-modeline-spc)
icon
(doom-modeline-vspc)
(propertize name
'face face
'help-echo "mouse-1: Switch perspective
mouse-2: Show help for minor mode"
'mouse-face 'mode-line-highlight
'local-map (let ((map (make-sparse-keymap)))
(define-key map [mode-line mouse-1]
#'persp-switch)
(define-key map [mode-line mouse-2]
(lambda ()
(interactive)
(describe-function 'persp-mode)))
map))
(doom-modeline-spc)))))))
'mouse-face 'mode-line-highlight
'local-map (let ((map (make-sparse-keymap)))
(define-key map [mode-line mouse-1]
#'persp-switch)
(define-key map [mode-line mouse-2]
(lambda ()
(interactive)
(describe-function 'persp-mode)))
map))
(doom-modeline-spc)))))))
(add-hook 'find-file-hook #'doom-modeline-update-persp-name)
(add-hook 'persp-activated-functions #'doom-modeline-update-persp-name)