Function: ghostel--redispatch-scroll-event

ghostel--redispatch-scroll-event is a natively compiled function defined in ghostel.el.

Signature

(ghostel--redispatch-scroll-event EVENT)

Documentation

Re-dispatch scroll EVENT through the event loop without our intercept.

Temporarily disables the emulation-map intercept and pushes the event back as unread input. The next key-lookup therefore skips our map and finds the user's scroll handler. A pre-command-hook re-enables the intercept before that handler runs, so subsequent events are intercepted again.

Source Code

;; Defined in /nix/store/1252krff0gb2kisjcpp45m50cpdskfrl-emacs-packages-deps/share/emacs/site-lisp/ghostel.el
(defun ghostel--redispatch-scroll-event (event)
  "Re-dispatch scroll EVENT through the event loop without our intercept.
Temporarily disables the emulation-map intercept and pushes the event
back as unread input.  The next key-lookup therefore skips our map and
finds the user's scroll handler.  A `pre-command-hook' re-enables the
intercept before that handler runs, so subsequent events are intercepted
again."
  (setq ghostel--scroll-intercept-active nil
        ghostel--scroll-pending 0.0)
  (push event unread-command-events)
  ;; pre-command-hook fires *after* key lookup but *before* the command,
  ;; so the re-dispatched event is looked up with our intercept disabled
  ;; and the intercept is back on before the next event after that.
  (add-hook 'pre-command-hook #'ghostel--reenable-scroll-intercept nil t))