emacs-diffs
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

[Emacs-diffs] Changes to emacs/lisp/doc-view.el,v


From: Stefan Monnier
Subject: [Emacs-diffs] Changes to emacs/lisp/doc-view.el,v
Date: Sun, 09 Mar 2008 21:37:19 +0000

CVSROOT:        /sources/emacs
Module name:    emacs
Changes by:     Stefan Monnier <monnier>        08/03/09 21:37:18

Index: doc-view.el
===================================================================
RCS file: /sources/emacs/emacs/lisp/doc-view.el,v
retrieving revision 1.51
retrieving revision 1.52
diff -u -b -r1.51 -r1.52
--- doc-view.el 9 Mar 2008 03:05:33 -0000       1.51
+++ doc-view.el 9 Mar 2008 21:37:16 -0000       1.52
@@ -1082,26 +1082,28 @@
 
 ;;;; Bookmark integration
 
+(declare-function bookmark-buffer-file-name "bookmark" ())
+(declare-function bookmark-prop-get "bookmark" (bookmark prop))
+
 (defun doc-view-bookmark-make-record ()
-  `((filename . ,buffer-file-name)
+  `((filename . ,(bookmark-buffer-file-name))
     (page     . ,(doc-view-current-page))
     (handler  . doc-view-bookmark-jump)))
 
 
-(declare-function bookmark-get-filename        "bookmark" (bookmark))
-(declare-function bookmark-get-bookmark-record "bookmark" (bookmark))
-
 ;;;###autoload
 (defun doc-view-bookmark-jump (bmk)
   ;; This implements the `handler' function interface for record type
   ;; returned by `doc-view-bookmark-make-record', which see.
-  (save-window-excursion
-    (let ((filename (bookmark-get-filename bmk))
-         (page (cdr (assq 'page (bookmark-get-bookmark-record bmk)))))
-      (find-file filename)
+  (let ((filename (bookmark-prop-get bmk 'filename))
+        (page (bookmark-prop-get bmk 'page)))
+    (with-current-buffer (find-file-noselect filename)
       (when (not (eq major-mode 'doc-view-mode))
        (doc-view-toggle-display))
-      (doc-view-goto-page page)
+      (with-selected-window
+          (or (get-buffer-window (current-buffer) 0)
+              (selected-window))
+        (doc-view-goto-page page))
       `((buffer ,(current-buffer)) (position ,1)))))
 
 




reply via email to

[Prev in Thread] Current Thread [Next in Thread]