branch: externals/ement commit 645537c07f23e7d173047971e56c8e8c78fe5236 Author: Adam Porter <a...@alphapapa.net> Commit: Adam Porter <a...@alphapapa.net>
Add: (ement-directory-define-key people-p) And use in ement-directory-default-keys. --- README.org | 4 ++++ ement-directory.el | 15 ++++++++++++++- 2 files changed, 18 insertions(+), 1 deletion(-) diff --git a/README.org b/README.org index 3a9368c874..8d4e3324f4 100644 --- a/README.org +++ b/README.org @@ -294,6 +294,10 @@ Ement.el doesn't support encrypted rooms natively, but it can be used transparen ** 0.13-pre +*Additions* + ++ Group joined direct rooms in directory buffers. + *Fixes* + Name for direct rooms in directory buffers. diff --git a/ement-directory.el b/ement-directory.el index d5802179b8..8a3fb1954b 100644 --- a/ement-directory.el +++ b/ement-directory.el @@ -85,8 +85,21 @@ (when (equal "m.space" type) "Spaces"))) +(ement-directory-define-key people-p () + (pcase-let (((map ('room_id id) ('room_type type)) item) + ((map session) ement-directory-etc)) + (pcase type + ("m.space" nil) + (_ (when-let ((room (cl-find id (ement-session-rooms session) + :key #'ement-room-id :test #'equal)) + ((ement--room-direct-p room session))) + (propertize "People" 'face 'ement-room-list-direct)))))) + (defcustom ement-directory-default-keys - '((joined-p) + '((joined-p + (people-p) + (and :name "Rooms" + :keys ((not people-p)))) (space-p) ((size :> 10000)) ((size :> 1000))