X-Git-Url: https://cgit.sxemacs.org/?p=riece;a=blobdiff_plain;f=lisp%2Friece-display.el;fp=lisp%2Friece-display.el;h=fb01aa02bc2f3d1b2830989b8fd02c664ae79800;hp=253ae755683f0a52a1399b447d0f945ada4b4a83;hb=be2acc33c38d2001a6e0342de584dfb361bb4f65;hpb=8f735f46fdc3d43c4c6fa270b43f738bd22278fc diff --git a/lisp/riece-display.el b/lisp/riece-display.el index 253ae75..fb01aa0 100644 --- a/lisp/riece-display.el +++ b/lisp/riece-display.el @@ -30,6 +30,8 @@ (require 'riece-layout) (require 'riece-signal) +(autoload 'derived-mode-class "derived") + (defvar riece-channel-buffer-format "*Channel:%s*" "Format of channel message buffer.") (defvar riece-channel-buffer-alist nil @@ -337,16 +339,17 @@ Local to the buffer in `riece-buffer-list'.") "O" "-") riece-user-indicator riece-real-nickname)))) - (setq riece-freeze-indicator - (with-current-buffer (if (and riece-channel-buffer-mode - riece-channel-buffer) - riece-channel-buffer - riece-dialogue-buffer) - (if (eq riece-freeze 'own) - "f" - (if riece-freeze - "F" - "-"))))) + (walk-windows + (lambda (window) + (with-current-buffer (window-buffer window) + (if (eq (derived-mode-class major-mode) + 'riece-dialogue-mode) + (setq riece-freeze-indicator + (if (eq riece-freeze 'own) + "f" + (if riece-freeze + "F" + "-")))))))) (defun riece-update-buffers (&optional buffers) (unless buffers