Fixed defgroup description.
[riece] / lisp / riece-mini.el
index 1b23e6a..fcadb6b 100644 (file)
 ;;; Code:
 
 (require 'riece-message)
+(require 'riece-biff)
 
 (defgroup riece-mini nil
-  "riece on minibuffer"
+  "Riece on minibuffer."
   :group 'riece)
 
 (defcustom riece-mini-backlog-size 5
 (defconst riece-mini-description
   "Send arrival messages to minibuffer")
 
-(defmacro riece-mini-message-no-log (string &rest args)
+(defun riece-mini-message-no-log (string &rest args)
   "Like `message', except that message logging is disabled."
   (if (featurep 'xemacs)
       (if args
-         `(display-message 'no-log (format ,string ,@args))
-       `(display-message 'no-log ,string))
-    `(let (message-log-max)
-       (message ,string ,@args))))
+         (display-message 'no-log (apply #'format string args))
+       (display-message 'no-log string))
+    (let (message-log-max)
+      (apply #'message string args))))
 
 (defun riece-mini-display-message-function (message)
   "Show arrival messages to minibuffer."
@@ -126,6 +127,9 @@ If twice (C-u C-u), then ask the channel."
       (let ((max-mini-window-height height)
            (resize-mini-windows t))
        (setq riece-mini-backlog-shown t)
+       (when (and (memq 'riece-biff riece-addons)
+                  riece-biff-enabled)
+         (riece-biff-clear))
        (riece-mini-message-no-log
         "%s" (mapconcat #'identity riece-mini-backlog-history "\n"))))))
 
@@ -135,6 +139,10 @@ If twice (C-u C-u), then ask the channel."
       (setq riece-mini-backlog-shown nil)
       (riece-mini-message-no-log ""))))
 
+(defun riece-mini-requires ()
+  (if (memq 'riece-biff riece-addons)
+      '(riece-biff)))
+
 (defun riece-mini-insinuate ()
   (add-hook 'riece-after-display-message-functions
            'riece-mini-display-message-function)