- (or show-user-list riece-channel-list-buffer-mode))
- (let ((rest-window (split-window (selected-window)
- (/ (window-width) 5) t)))
- (if (and show-user-list riece-channel-list-buffer-mode)
- (progn
- (set-window-buffer (split-window)
- riece-channel-list-buffer)
- (set-window-buffer (selected-window)
- riece-user-list-buffer))
- (if show-user-list
- (set-window-buffer (selected-window)
- riece-user-list-buffer)
- (if riece-channel-list-buffer-mode
- (set-window-buffer (selected-window)
- riece-channel-list-buffer))))
- (select-window rest-window)))
- (if (and riece-current-channel
- riece-channel-buffer-mode)
- (let ((rest-window (split-window)))
- (set-window-buffer (selected-window)
- riece-channel-buffer)
- (set-window-buffer (split-window rest-window 4)
- riece-others-buffer)
- (with-current-buffer riece-channel-buffer
- (setq truncate-partial-width-windows nil))
- (with-current-buffer riece-others-buffer
- (setq truncate-partial-width-windows nil))
- (set-window-buffer rest-window
- riece-command-buffer))
- (set-window-buffer (split-window (selected-window) 4)
- riece-dialogue-buffer)
- (set-window-buffer (selected-window)
- riece-command-buffer))
- (riece-set-window-points)
- (select-window (or (get-buffer-window buffer)
- (get-buffer-window riece-command-buffer)))))
-
-(defun riece-set-window-points ()
- (if (and riece-user-list-buffer
- (get-buffer-window riece-user-list-buffer))
- (with-current-buffer riece-user-list-buffer
- (unless (riece-frozen riece-user-list-buffer)
- (set-window-start (get-buffer-window riece-user-list-buffer)
- (point-min)))))
- (if (get-buffer-window riece-channel-list-buffer)
- (with-current-buffer riece-channel-list-buffer
- (unless (riece-frozen riece-channel-list-buffer)
- (set-window-start (get-buffer-window riece-channel-list-buffer)
- (point-min))))))
+ (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 (memq ?o (cdr (car users)))
+ "@"
+ (if (memq ?v (cdr (car users)))
+ "+"
+ " "))
+ (riece-format-identity
+ (riece-make-identity (car (car users))
+ (riece-identity-server
+ riece-current-channel))
+ t)
+ "\n")
+ (setq users (cdr users)))))))