diff --git a/mu4e-column-faces.el b/mu4e-column-faces.el index db5b1eb..4f065a1 100644 --- a/mu4e-column-faces.el +++ b/mu4e-column-faces.el @@ -34,11 +34,6 @@ :group 'mu4e-column-faces :prefix "mu4e-column-faces-") -(defface mu4e-column-faces-thread-subject - '((t :inherit font-lock-doc-face)) - "Face for `:thread-subject' columns." - :group 'mu4e-column-faces) - (defface mu4e-column-faces-to-from '((t :inherit font-lock-variable-name-face)) "Face for `:from-or-to', `:to', `:from', `:cc' and `:bcc' columns." @@ -94,11 +89,6 @@ "Face for `:size' columns." :group 'mu4e-column-faces) -(defface mu4e-column-faces-thread-subject - '((t :inherit font-lock-type-face)) - "Face for `:thread-subject' columns." - :group 'mu4e-column-faces) - (defface mu4e-column-faces-user-agent '((t :inherit font-lock-doc-face)) "Face for `:user-agent' columns." @@ -264,7 +254,7 @@ the message flags in included in `mu4e-column-faces--apply-face'." face)) (val (if width (mu4e~headers-truncate-field field val width) val))) (when face - (put-text-property 0 (length val) 'face face val)) + (add-face-text-property 0 (length val) face t val)) val)))) (define-inline mu4e-column-faces--determine-face (column msg) @@ -274,31 +264,24 @@ the message flags in included in `mu4e-column-faces--apply-face'." (inline-quote (cl-case ,column (:subject - (let ((flags (mu4e-message-field ,msg :flags))) + (let ((flags (mu4e-message-field ,msg :flags)) + (meta (mu4e-message-field ,msg :meta))) (cond ((memq 'trashed flags) 'mu4e-trashed-face) ((memq 'draft flags) 'mu4e-draft-face) ((or (memq 'unread flags) (memq 'new flags)) 'mu4e-unread-face) ((memq 'flagged flags) 'mu4e-flagged-face) + ((plist-get meta :related) 'mu4e-related-face) ((memq 'replied flags) 'mu4e-replied-face) ((memq 'passed flags) 'mu4e-forwarded-face) - (t 'mu4e-header-face)) )) + (t 'mu4e-header-face)))) ((:to :from :cc :bcc :from-or-to) 'mu4e-column-faces-to-from) (:attachments 'mu4e-column-faces-attachments) (:message-id 'mu4e-column-faces-message-id) (:thread-subject - (let ((flags (mu4e-message-field ,msg :flags))) - (cond - ((memq 'trashed flags) 'mu4e-trashed-face) - ((memq 'draft flags) 'mu4e-draft-face) - ((or (memq 'unread flags) (memq 'new flags)) - 'mu4e-unread-face) - ((memq 'flagged flags) 'mu4e-flagged-face) - ((memq 'replied flags) 'mu4e-replied-face) - ((memq 'passed flags) 'mu4e-forwarded-face) - (t 'mu4e-header-face)) )) + (mu4e-column-faces--determine-face :subject msg)) (:flags 'mu4e-column-faces-flags) (:tags 'mu4e-column-faces-tags) (:size 'mu4e-column-faces-size)