]> git.eshelyaron.com Git - emacs.git/commitdiff
(vc-dir-mouse-map): New keymap.
authorNick Roberts <nickrob@snap.net.nz>
Sat, 31 Jan 2009 02:18:21 +0000 (02:18 +0000)
committerNick Roberts <nickrob@snap.net.nz>
Sat, 31 Jan 2009 02:18:21 +0000 (02:18 +0000)
(vc-default-dir-printer): Use it locally.
(vc-dir-find-file-other-window): Allow mouse events.

lisp/vc-dir.el

index 249ceec75f9a43f5bc180d7bc7a903342e736349..6818b3a99d85d21c0242ec8ea1669003046185b3 100644 (file)
@@ -689,9 +689,10 @@ that share the same state."
   (interactive)
   (find-file (vc-dir-current-file)))
 
-(defun vc-dir-find-file-other-window ()
+(defun vc-dir-find-file-other-window (&optional event)
   "Find the file on the current line, in another window."
-  (interactive)
+  (interactive (list last-input-event))
+  (if event (posn-set-point (event-end event)))
   (find-file-other-window (vc-dir-current-file)))
 
 (defun vc-dir-isearch ()
@@ -1143,6 +1144,13 @@ Interactively, a prefix argument means to ask for the backend."
    (propertize "Please add backend specific headers here.  It's easy!"
               'face 'font-lock-warning-face)))
 
+;; Keep existing map.
+(defvar vc-dir-mouse-map
+  (let ((map vc-dir-mode-map))
+    (define-key map [mouse-2] 'vc-dir-find-file-other-window)
+    map)
+  "Local keymap for visiting a file.")
+
 (defun vc-default-dir-printer (backend fileentry)
   "Pretty print FILEENTRY."
   ;; If you change the layout here, change vc-dir-move-to-goal-column.
@@ -1169,7 +1177,8 @@ Interactively, a prefix argument means to ask for the backend."
       (if isdir
          "Directory\nVC operations can be applied to it\nmouse-3: Pop-up menu"
        "File\nmouse-3: Pop-up menu")
-      'mouse-face 'highlight))))
+      'mouse-face 'highlight
+      'local-map vc-dir-mouse-map))))
 
 (defun vc-default-extra-status-menu (backend)
   nil)