]> git.eshelyaron.com Git - emacs.git/commitdiff
(mouse-choose-completion): Use mouse-face properties to find string to use.
authorRichard M. Stallman <rms@gnu.org>
Mon, 11 Jul 1994 21:25:52 +0000 (21:25 +0000)
committerRichard M. Stallman <rms@gnu.org>
Mon, 11 Jul 1994 21:25:52 +0000 (21:25 +0000)
lisp/mouse.el

index df099cde83fbae97446c1e67cb089fd4e6bdadfc..f797768963444db6f2dbe7e88c14c5032465fde2 100644 (file)
@@ -1195,18 +1195,12 @@ and selects that window."
       (save-excursion
        (goto-char (posn-point (event-start event)))
        (let (beg end)
-         (skip-chars-forward "^ \t\n")
-         (while (looking-at " [^ \n\t]")
-           (forward-char 1)
-           (skip-chars-forward "^ \t\n"))
-         (setq end (point))
-         (skip-chars-backward "^ \t\n")
-         (while (and (= (preceding-char) ?\ )
-                     (not (and (> (point) (1+ (point-min)))
-                               (= (char-after (- (point) 2)) ?\ ))))
-           (backward-char 1)
-           (skip-chars-backward "^ \t\n"))
-         (setq beg (point))
+         (if (and (not (eobp)) (get-text-property (point) 'mouse-face))
+             (setq end (point) beg (1+ (point))))
+         (if (null beg)
+             (error "No completion here"))
+         (setq beg (previous-single-property-change beg 'mouse-face))
+         (setq end (next-single-property-change end 'mouse-face))
          (setq choice (buffer-substring beg end)))))
     (let ((owindow (selected-window)))
       (select-window (posn-window (event-start event)))