]> git.eshelyaron.com Git - emacs.git/commitdiff
(lisp-complete-symbol): Mostly undo the change by Kevin Rodgers.
authorStefan Monnier <monnier@iro.umontreal.ca>
Thu, 22 Dec 2005 01:48:20 +0000 (01:48 +0000)
committerStefan Monnier <monnier@iro.umontreal.ca>
Thu, 22 Dec 2005 01:48:20 +0000 (01:48 +0000)
Instead, just hide the completions buffer if we don't need to show it.

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

index e5063b2206e09b9f840a5881938449a8ba12c2ae..d2162d7b1ad229db6dd1e32889f0771d175872f5 100644 (file)
@@ -1,3 +1,9 @@
+2005-12-21  Stefan Monnier  <monnier@iro.umontreal.ca>
+
+       * emacs-lisp/lisp.el (lisp-complete-symbol): Mostly undo the change
+       by Kevin Rodgers.  Instead, just hide the completions buffer if we
+       don't need to show it.
+
 2005-12-21  Luc Teirlinck  <teirllm@auburn.edu>
 
        * wid-edit.el (file, directory): Doc fixes for the `define-widget's.
index 5d593ecb9fddcca593e4acf394ed70b5a42d8dc3..f8a5b0b019e5a796f5d70b23dc4000b165f30d81 100644 (file)
@@ -569,11 +569,13 @@ considered."
              ((null completion)
               (message "Can't find completion for \"%s\"" pattern)
               (ding))
+             ((not (string= pattern completion))
+              (delete-region beg end)
+              (insert completion)
+               ;; Don't leave around a completions buffer that's outofdate.
+               (let ((win (get-buffer-window "*Completions*" 0)))
+                 (if win (with-selected-window win (bury-buffer)))))
              (t
-              (unless (string= completion pattern)
-                (delete-region beg end)
-                (insert completion)
-                (setq pattern completion))
               (message "Making completion list...")
               (let ((list (all-completions pattern obarray predicate)))
                 (setq list (sort list 'string<))
@@ -589,8 +591,9 @@ considered."
                 (if (> (length list) 1)
                     (with-output-to-temp-buffer "*Completions*"
                       (display-completion-list list pattern))
-                   (if (get-buffer "*Completions*")
-                       (delete-windows-on "*Completions*"))))
+                   ;; Don't leave around a completions buffer that's outofdate.
+                   (let ((win (get-buffer-window "*Completions*" 0)))
+                     (if win (with-selected-window win (bury-buffer))))))
               (message "Making completion list...%s" "done")))))))
 
 ;; arch-tag: aa7fa8a4-2e6f-4e9b-9cd9-fef06340e67e