(defun riece-update-user-list-buffer ()
(save-excursion
(set-buffer riece-user-list-buffer)
- (when (and riece-current-channel
- (riece-channel-p (riece-identity-prefix riece-current-channel)))
- (let (users operators speakers)
- (with-current-buffer (process-buffer (riece-server-process
- (riece-identity-server
- riece-current-channel)))
- (setq users
- (riece-channel-get-users
- (riece-identity-prefix riece-current-channel))
- operators
- (riece-channel-get-operators
- (riece-identity-prefix riece-current-channel))
- speakers
- (riece-channel-get-speakers
- (riece-identity-prefix riece-current-channel))))
- (let ((inhibit-read-only t)
- buffer-read-only)
+ (if (and riece-current-channel
+ (riece-channel-p (riece-identity-prefix riece-current-channel)))
+ (let* ((users
+ (with-current-buffer (process-buffer (riece-server-process
+ (riece-identity-server
+ riece-current-channel)))
+ (riece-channel-get-users (riece-identity-prefix
+ riece-current-channel))))
+ (inhibit-read-only t)
+ buffer-read-only)
(erase-buffer)
+ (riece-kill-all-overlays)
(while users
- (insert (if (member (car users) operators)
+ (insert (if (memq ?o (cdr (car users)))
"@"
- (if (member (car users) speakers)
+ (if (memq ?v (cdr (car users)))
"+"
" "))
(riece-format-identity
- (riece-make-identity (car users)
+ (riece-make-identity (car (car users))
(riece-identity-server
riece-current-channel))
t)
"\n")
- (setq users (cdr users))))))))
+ (setq users (cdr users)))))))
(defun riece-update-channel-list-buffer ()
(save-excursion
(index 1)
(channels riece-current-channels))
(erase-buffer)
+ (riece-kill-all-overlays)
(while channels
(if (car channels)
(insert (riece-format-channel-list-line