X-Git-Url: http://git.chise.org/gitweb/?a=blobdiff_plain;f=lisp%2Flist-mode.el;h=f171b11d2ba02b51369a9017d99f07cb3bc5f05a;hb=84e7f4995a7ba384745baa8437972fed3ed963a4;hp=25d2418951f50f102612d6cfcb6f9348a3e2495b;hpb=2fd9701a4f902054649dde9143a3f77809afee8f;p=chise%2Fxemacs-chise.git- diff --git a/lisp/list-mode.el b/lisp/list-mode.el index 25d2418..f171b11 100644 --- a/lisp/list-mode.el +++ b/lisp/list-mode.el @@ -571,23 +571,25 @@ Go to the window from which completion was requested." (and (button-event-p event) ;; Give temporary modes such as isearch a chance to turn off. (run-hooks 'mouse-leave-buffer-hook)) - (or buffer (setq buffer (symbol-value-in-buffer - 'completion-reference-buffer - (or (and (button-event-p event) - (event-buffer event)) - (current-buffer))))) - (save-selected-window - (and (button-event-p event) - (select-window (event-window event))) - (if (and (one-window-p t 'selected-frame) - (window-dedicated-p (selected-window))) - ;; This is a special buffer's frame - (iconify-frame (selected-frame)) - (or (window-dedicated-p (selected-window)) - (bury-buffer)))) - (choose-completion-string (extent-string extent) - buffer - completion-base-size)) + (let ((list-buffer (or (and (button-event-p event) + (event-buffer event)) + (current-buffer)))) + (or buffer (setq buffer (symbol-value-in-buffer + 'completion-reference-buffer + list-buffer))) + (save-selected-window + (and (button-event-p event) + (select-window (event-window event))) + (if (and (one-window-p t 'selected-frame) + (window-dedicated-p (selected-window))) + ;; This is a special buffer's frame + (iconify-frame (selected-frame)) + (or (window-dedicated-p (selected-window)) + (bury-buffer)))) + (choose-completion-string (extent-string extent) + buffer + (symbol-value-in-buffer 'completion-base-size + list-buffer)))) ;; Delete the longest partial match for STRING ;; that can be found before POINT.