]> git.eshelyaron.com Git - emacs.git/commitdiff
* lisp/emacs-lisp/package.el (package-show-package-list): If the buffer
authorDmitry Gutov <dgutov@yandex.ru>
Sun, 23 Mar 2014 08:35:56 +0000 (10:35 +0200)
committerDmitry Gutov <dgutov@yandex.ru>
Sun, 23 Mar 2014 08:35:56 +0000 (10:35 +0200)
is already displayed in another window, switch to that window.

lisp/ChangeLog
lisp/emacs-lisp/package.el

index b73bb1e67d546f3c7c45baf4a6666f377f52f293..feb78f59fc7d7f82092c4e6230d9fb98583935ca 100644 (file)
@@ -1,3 +1,8 @@
+2014-03-23  Dmitry Gutov  <dgutov@yandex.ru>
+
+       * emacs-lisp/package.el (package-show-package-list): If the buffer
+       is already displayed in another window, switch to that window.
+
 2014-03-21  Daniel Colascione  <dancol@dancol.org>
 
        * mail/emacsbug.el (report-emacs-bug): Include memory usage
index 480fddbd3204055b540c1e5047bd768e2f58178d..39cfd8e46ec6ba23d3b9b83b1b56c8737571dc11 100644 (file)
@@ -2117,11 +2117,14 @@ When KEYWORDS are given, only packages with those KEYWORDS are
 shown."
   (interactive)
   (require 'finder-inf nil t)
-  (let ((buf (get-buffer-create "*Packages*")))
+  (let* ((buf (get-buffer-create "*Packages*"))
+         (win (get-buffer-window buf)))
     (with-current-buffer buf
       (package-menu-mode)
       (package-menu--generate nil packages keywords))
-    (switch-to-buffer buf)))
+    (if win
+        (select-window win)
+      (switch-to-buffer buf))))
 
 ;; package-menu--generate rebinds "q" on the fly, so we have to
 ;; hard-code the binding in the doc-string here.