summaryrefslogtreecommitdiff
path: root/lisp/image
diff options
context:
space:
mode:
authorManuel Giraud <manuel@ledu-giraud.fr>2023-03-09 14:35:31 +0100
committerEli Zaretskii <eliz@gnu.org>2023-08-10 12:09:56 +0300
commit2026cba0c998c60c60ed4d87e81b537f2a931cb7 (patch)
treeb98638450c312821953af59be88d7e1a3aa40de1 /lisp/image
parentf2e3d2f1256da2a551cfe3fa685e582eb6d09d60 (diff)
downloademacs-2026cba0c998c60c60ed4d87e81b537f2a931cb7.tar.gz
Scroll up and down in image-dired
* lisp/image/image-dired.el (image-dired-scroll): Function to manage scroll in image-dired. (image-dired-scroll-up, image-dired-scroll-down): Scroll up and down command in image-dired. (image-dired-thumbnail-mode-map): Use them. (Bug#65052)
Diffstat (limited to 'lisp/image')
-rw-r--r--lisp/image/image-dired.el20
1 files changed, 20 insertions, 0 deletions
diff --git a/lisp/image/image-dired.el b/lisp/image/image-dired.el
index 9a92cae8ad5..8e2e4c6f644 100644
--- a/lisp/image/image-dired.el
+++ b/lisp/image/image-dired.el
@@ -770,6 +770,24 @@ On reaching end or beginning of buffer, stop and show a message."
(interactive nil image-dired-thumbnail-mode)
(image-dired--movement-command (pos-eol) 'reverse))
+(defun image-dired-scroll (&optional down)
+ "Scroll in the thumbnail buffer."
+ (let ((goal-column (current-column)))
+ (if down (scroll-down) (scroll-up))
+ (move-to-column goal-column)
+ (image-dired--movement-ensure-point-pos down)
+ (when image-dired-track-movement
+ (image-dired-track-original-file))
+ (image-dired--update-header-line)))
+
+(defun image-dired-scroll-up ()
+ (interactive nil image-dired-thumbnail-mode)
+ (image-dired-scroll))
+
+(defun image-dired-scroll-down ()
+ (interactive nil image-dired-thumbnail-mode)
+ (image-dired-scroll 'down))
+
;;; Header line
@@ -980,6 +998,8 @@ You probably want to use this together with
"<remap> <end-of-buffer>" #'image-dired-end-of-buffer
"<remap> <move-beginning-of-line>" #'image-dired-move-beginning-of-line
"<remap> <move-end-of-line>" #'image-dired-move-end-of-line
+ "<remap> <scroll-up-command>" #'image-dired-scroll-up
+ "<remap> <scroll-down-command>" #'image-dired-scroll-down
:menu
'("Image-Dired"