- (add-hook 'riece-after-switch-to-channel-functions
- 'riece-channel-list-mark-current-channel)
- (add-hook 'riece-after-load-startup-hook
- 'riece-channel-list-schedule-turn-on-font-lock))
+ (add-hook 'riece-channel-list-mode-hook
+ 'riece-highlight-setup-channel-list)
+ (add-hook 'riece-format-identity-for-channel-list-indicator-functions
+ 'riece-highlight-format-identity-for-channel-list-indicator)
+ (add-hook 'riece-after-insert-functions
+ 'riece-highlight-put-overlay-faces))
+
+(defun riece-highlight-enable ()
+ (let ((buffers riece-buffer-list))
+ (while buffers
+ (if (memq (derived-mode-class
+ (with-current-buffer (car buffers)
+ major-mode))
+ '(riece-dialogue-mode riece-channel-list-mode))
+ (with-current-buffer (car buffers)
+ (font-lock-mode 1)))
+ (setq buffers (cdr buffers))))
+ (setq riece-highlight-enabled t))
+
+(defun riece-highlight-disable ()
+ (let ((buffers riece-buffer-list))
+ (while buffers
+ (if (memq (derived-mode-class
+ (with-current-buffer (car buffers)
+ major-mode))
+ '(riece-dialogue-mode riece-channel-list-mode))
+ (with-current-buffer (car buffers)
+ (font-lock-mode 0)))
+ (setq buffers (cdr buffers))))
+ (setq riece-highlight-enabled nil))