From: Stefan Kangas Date: Wed, 27 Oct 2021 02:34:25 +0000 (+0200) Subject: image-dired: Improve mouse behaviour X-Git-Tag: emacs-29.0.90~3671^2~397 X-Git-Url: http://git.eshelyaron.com/gitweb/?a=commitdiff_plain;h=236457e05243f7d9acdbd0996076507c9134ce6d;p=emacs.git image-dired: Improve mouse behaviour * lisp/image-dired.el (image-dired-thumbnail-mode-map): Improve mouse behaviour: ignore dragging, as it currently doesn't do anything useful, and make all clicks just select the thumbnail. (image-dired-mouse-display-image) (image-dired-mouse-select-thumbnail): Move point to closest image after clicking in buffer. --- diff --git a/lisp/image-dired.el b/lisp/image-dired.el index cc8b80dd51f..37c324f4804 100644 --- a/lisp/image-dired.el +++ b/lisp/image-dired.el @@ -1657,6 +1657,15 @@ You probably want to use this together with ;; Mouse (define-key map [mouse-2] 'image-dired-mouse-display-image) (define-key map [mouse-1] 'image-dired-mouse-select-thumbnail) + (define-key map [mouse-3] #'image-dired-mouse-select-thumbnail) + (define-key map [down-mouse-1] #'image-dired-mouse-select-thumbnail) + (define-key map [down-mouse-2] #'image-dired-mouse-select-thumbnail) + (define-key map [down-mouse-3] #'image-dired-mouse-select-thumbnail) + ;; Let's disable mouse dragging, as it currently doesn't do + ;; anything useful. + (define-key map [drag-mouse-1] #'ignore) + (define-key map [drag-mouse-2] #'ignore) + (define-key map [drag-mouse-3] #'ignore) ;; Seems I must first set C-down-mouse-1 to undefined, or else it ;; will trigger the buffer menu. If I try to instead bind ;; C-down-mouse-1 to `image-dired-mouse-toggle-mark', I get a message @@ -2410,6 +2419,8 @@ non-nil." (interactive "e") (mouse-set-point event) (goto-char (posn-point (event-end event))) + (unless (image-at-point-p) + (image-dired-backward-image)) (let ((file (image-dired-original-file-name))) (when file (if image-dired-track-movement @@ -2425,6 +2436,8 @@ non-nil." (interactive "e") (mouse-set-point event) (goto-char (posn-point (event-end event))) + (unless (image-at-point-p) + (image-dired-backward-image)) (if image-dired-track-movement (image-dired-track-original-file)) (image-dired-display-thumb-properties))