+2007-08-07 Stefan Monnier <monnier@iro.umontreal.ca>
+
+ * vc.el (vc-annotate): Select temp-buffer before running vc-exec-after.
+ Select the buffer's window before moving point.
+
2007-08-07 Richard Stallman <rms@gnu.org>
* term.el (term): Remove parent group `unix'.
* term.el: Honor term-default-fg-color and term-default-bg-color
settings when modifying term-current-face.
- (term-default-fg-color, term-default-bg-color): Initialized from
+ (term-default-fg-color, term-default-bg-color): Initialize from
default term-current-face.
(term-mode, term-reset-terminal): Set term-current-face with
term-default-fg-color and term-default-bg-color.
(set (make-local-variable 'vc-annotate-parent-display-mode)
display-mode)))
- (vc-exec-after
- `(progn
- (when ,current-line
- (goto-line ,current-line ,temp-buffer-name))
- (unless (active-minibuffer-window)
- (message "Annotating... done"))))))
+ (with-current-buffer temp-buffer-name
+ (vc-exec-after
+ `(progn
+ ;; Ideally, we'd rather not move point if the user has already
+ ;; moved it elsewhere, but really point here is not the position
+ ;; of the user's cursor :-(
+ (when ,current-line ;(and (bobp))
+ (let ((win (get-buffer-window (current-buffer) 0)))
+ (when win
+ (with-selected-window win
+ (goto-line ,current-line)))))
+ (unless (active-minibuffer-window)
+ (message "Annotating... done")))))))
(defun vc-annotate-prev-version (prefix)
"Visit the annotation of the version previous to this one.