[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
[elpa] externals/osm 2ba02faed5 2/2: Fix zooming when the mouse pointer
From: |
ELPA Syncer |
Subject: |
[elpa] externals/osm 2ba02faed5 2/2: Fix zooming when the mouse pointer is over a pin |
Date: |
Sun, 29 Sep 2024 03:58:49 -0400 (EDT) |
branch: externals/osm
commit 2ba02faed5d57da97c1f6e13df36091d68ddefee
Author: Daniel Mendler <mail@daniel-mendler.de>
Commit: Daniel Mendler <mail@daniel-mendler.de>
Fix zooming when the mouse pointer is over a pin
Co-authored-by: Michael Heerdegen <michael_heerdegen@web.de>
---
osm.el | 20 +++++++++++++++-----
1 file changed, 15 insertions(+), 5 deletions(-)
diff --git a/osm.el b/osm.el
index 79a531f2b6..0505615792 100644
--- a/osm.el
+++ b/osm.el
@@ -242,6 +242,16 @@ Should be at least 7 days according to the server usage
policies."
(funcall menu)
menu))))
+(defun osm--mouse-ignore-wheel (_prompt)
+ "Ignore mouse wheel events during key translation."
+ (pcase (this-single-command-raw-keys)
+ ((and `[,e]
+ (let y (event-basic-type e))
+ (guard (symbolp y))
+ (guard (string-search "wheel-" (symbol-name y))))
+ [])
+ (k k)))
+
(defvar-keymap osm-prefix-map
:doc "Global prefix map of OSM entry points."
"h" #'osm-home
@@ -258,11 +268,6 @@ Should be at least 7 days according to the server usage
policies."
(defvar-keymap osm-mode-map
:doc "Keymap used by `osm-mode'."
:parent (make-composed-keymap osm-prefix-map special-mode-map)
- "<osm-selected>" #'osm-mouse-select
- "<osm-bookmark>" #'osm-mouse-select
- "<osm-home>" #'osm-mouse-select
- "<osm-poi>" #'osm-mouse-select
- "<osm-track>" #'osm-mouse-select
"<home>" #'osm-home
"+" #'osm-zoom-in
"-" #'osm-zoom-out
@@ -310,6 +315,11 @@ Should be at least 7 days according to the server usage
policies."
"<" nil
">" nil)
+(dolist (pin osm-pin-colors)
+ (setq pin (vector (car pin)))
+ (define-key key-translation-map pin #'osm--mouse-ignore-wheel)
+ (define-key osm-mode-map pin #'osm-mouse-select))
+
(easy-menu-define osm-mode-menu osm-mode-map
"Menu for `osm-mode'."
'("OSM"