Update scroll event list

This commit is contained in:
Akib Azmain Turja 2022-10-06 17:07:25 +06:00
parent 8d0fa50865
commit 1cb5ae39c0
No known key found for this signature in database
GPG Key ID: 5535FCF54D88616B
1 changed files with 10 additions and 9 deletions

View File

@ -24,8 +24,8 @@
;; You should have received a copy of the GNU General Public License
;; along with this program. If not, see <http://www.gnu.org/licenses/>.
;; Disclaimer: This file is based on vertico-mouse.el of Vertico package,
;; which is a part of GNU Emacs.
;; Disclaimer: This file is based on vertico-mouse.el of Vertico
;; package, which is a part of GNU Emacs.
;;; Commentary:
@ -116,7 +116,8 @@ FCANDS is the return value of `corfu--format-candidates'."
(let ((current-buffer (current-buffer)))
(with-current-buffer buffer
(setq-local mwheel-scroll-up-function #'corfu-mouse--scroll-up)
(setq-local mwheel-scroll-down-function #'corfu-mouse--scroll-down)
(setq-local mwheel-scroll-down-function
#'corfu-mouse--scroll-down)
(setq-local corfu-mouse--completion-buffer current-buffer)))
buffer)
@ -129,9 +130,7 @@ FCANDS is the return value of `corfu--format-candidates'."
(define-minor-mode corfu-mouse-mode
"Mouse support for Corfu."
:global t :group 'corfu
(let ((scroll-events '(mouse-4 mouse-5 down-mouse-4 down-mouse-5
double-mouse-4 double-mouse-5
triple-mouse-4 triple-mouse-5))
(let ((scroll-events '(wheel-up wheel-down mouse-4 mouse-5))
(continue-commands '("corfu-mouse--on-mouse-1"
"corfu-mouse--on-mouse-3"
corfu-mouse-mwheel-scroll)))
@ -147,18 +146,20 @@ FCANDS is the return value of `corfu--format-candidates'."
(append corfu-continue-commands continue-commands))
(dolist (event scroll-events)
(define-key corfu--mouse-ignore-map (vector event)
#'corfu-mouse-mwheel-scroll)))
#'corfu-mouse-mwheel-scroll)))
(t
(advice-remove #'corfu--format-candidates
#'corfu-mouse--format-candidates)
(advice-remove #'corfu--make-buffer #'corfu-mouse--setup-scrolling)
(advice-remove #'corfu--make-buffer
#'corfu-mouse--setup-scrolling)
(advice-remove #'corfu--post-command
#'corfu-mouse--post-command-set-buffer)
(dolist (command continue-commands)
(setq corfu-continue-commands
(delete command corfu-continue-commands)))
(dolist (event scroll-events)
(define-key corfu--mouse-ignore-map (vector event) #'ignore))))))
(define-key corfu--mouse-ignore-map (vector event)
#'ignore))))))
(provide 'corfu-mouse)
;;; corfu-mouse.el ends here