gnus.el (gnus-other-frame-resume-function): Add user option.
authorSam Steingold <sds@gnu.org>
Wed, 12 Dec 2012 22:31:27 +0000 (22:31 +0000)
committerKatsumi Yamaoka <yamaoka@jpl.org>
Wed, 12 Dec 2012 22:31:27 +0000 (22:31 +0000)
 (gnus-other-frame): Call `gnus-other-frame-resume-function' on resume.

lisp/ChangeLog
lisp/gnus.el

index 4a70bdc..d2f5d01 100644 (file)
@@ -3,6 +3,11 @@
        * gnus-art.el (gnus-article-browse-html-parts): Use <div align="left">
        instead of <pre> to align message header.
 
+2012-12-12  Sam Steingold  <sds@gnu.org>
+
+       * gnus.el (gnus-other-frame-resume-function): Add user option.
+       (gnus-other-frame): Call `gnus-other-frame-resume-function' on resume.
+
 2012-12-06  Sam Steingold  <sds@gnu.org>
 
        * gnus-start.el (gnus-before-resume-hook): Add.
index 7de6e83..618eb28 100644 (file)
@@ -2495,7 +2495,16 @@ Disabling the agent may result in noticeable loss of performance."
   :type 'boolean)
 
 (defcustom gnus-other-frame-function 'gnus
-  "Function called by the command `gnus-other-frame'."
+  "Function called by the command `gnus-other-frame' when starting Gnus."
+  :group 'gnus-start
+  :type '(choice (function-item gnus)
+                (function-item gnus-no-server)
+                (function-item gnus-slave)
+                (function-item gnus-slave-no-server)))
+
+(defcustom gnus-other-frame-resume-function 'gnus-group-get-new-news
+  "Function called by the command `gnus-other-frame' when resuming Gnus."
+  :version "24.4"
   :group 'gnus-start
   :type '(choice (function-item gnus)
                 (function-item gnus-no-server)
@@ -4362,8 +4371,9 @@ Used for `gnus-exit-gnus-hook' in `gnus-other-frame'."
   "Pop up a frame to read news.
 This will call one of the Gnus commands which is specified by the user
 option `gnus-other-frame-function' (default `gnus') with the argument
-ARG if Gnus is not running, otherwise just pop up a Gnus frame.  The
-optional second argument DISPLAY should be a standard display string
+ARG if Gnus is not running, otherwise pop up a Gnus frame and run the
+command specified by `gnus-other-frame-resume-function'.
+The optional second argument DISPLAY should be a standard display string
 such as \"unix:0\" to specify where to pop up a frame.  If DISPLAY is
 omitted or the function `make-frame-on-display' is not available, the
 current display is used."
@@ -4395,7 +4405,8 @@ current display is used."
                 (make-frame-on-display display gnus-other-frame-parameters)
               (make-frame gnus-other-frame-parameters))))
       (if alive
-         (switch-to-buffer gnus-group-buffer)
+         (progn (switch-to-buffer gnus-group-buffer)
+                (funcall gnus-other-frame-resume-function arg))
        (funcall gnus-other-frame-function arg)
        (add-hook 'gnus-exit-gnus-hook 'gnus-delete-gnus-frame)
   ;; One might argue that `gnus-delete-gnus-frame' should not be called