aboutsummaryrefslogtreecommitdiffstats
path: root/lisp
diff options
context:
space:
mode:
authorTassilo Horn <[email protected]>2008-01-29 13:50:35 +0000
committerTassilo Horn <[email protected]>2008-01-29 13:50:35 +0000
commit6f70aa334f6f388d2ea86e8e14747f6bb11e6795 (patch)
tree21bfad09673ea20c7d5f998408cd1acae46d1a3d /lisp
parent36e1c289c7d381817583d5b06e013550f56b0b8b (diff)
2008-01-29 Tassilo Horn <[email protected]>
* doc-view.el (doc-view-mode): Use facilities of image-mode to restore [vh]scroll when switching buffers.
Diffstat (limited to 'lisp')
-rw-r--r--lisp/ChangeLog15
-rw-r--r--lisp/doc-view.el9
2 files changed, 24 insertions, 0 deletions
diff --git a/lisp/ChangeLog b/lisp/ChangeLog
index 51a033602f..5c68efb529 100644
--- a/lisp/ChangeLog
+++ b/lisp/ChangeLog
@@ -1,3 +1,18 @@
+2008-01-29 Tassilo Horn <[email protected]>
+
+ * doc-view.el (doc-view-mode): Use facilities below to
+ restore [vh]scroll when switching buffers.
+
+ * image-mode.el (image-mode-current-vscroll)
+ (image-mode-current-hscroll): New variables.
+ (image-set-window-hscroll, image-set-window-vscroll): New
+ functions.
+ (image-forward-hscroll, image-next-line, image-bol, image-eol)
+ (image-bob, image-eob): Use them.
+ (image-reset-current-vhscroll): New function.
+ (image-mode): Make new variables buffer-local and reset [vh]scroll
+ on window configuration changes.
+
2008-01-27 Nick Roberts <[email protected]>
* progmodes/gdb-ui.el (gdb-create-define-alist): Don't call
diff --git a/lisp/doc-view.el b/lisp/doc-view.el
index 034eace3df..047785e844 100644
--- a/lisp/doc-view.el
+++ b/lisp/doc-view.el
@@ -987,6 +987,15 @@ toggle between displaying the document or editing it as text."
(add-hook 'change-major-mode-hook
(lambda () (delete-overlay doc-view-current-overlay))
nil t)
+
+ ;; Keep track of [vh]scroll when switching buffers
+ (set (make-local-variable 'image-mode-current-hscroll)
+ (window-hscroll (selected-window)))
+ (set (make-local-variable 'image-mode-current-vscroll)
+ (window-vscroll (selected-window)))
+ (add-hook 'window-configuration-change-hook
+ 'image-reset-current-vhscroll nil t)
+
(set (make-local-variable 'mode-line-position)
'(" P" (:eval (number-to-string doc-view-current-page))
"/" (:eval (number-to-string (length doc-view-current-files)))))