1
0
mirror of synced 2026-01-16 16:47:50 +00:00
Interlisp.medley/lispusers/WHEELSCROLL.TXT

2 lines
1.4 KiB
Plaintext
Raw Blame History

This file contains invisible Unicode characters

This file contains invisible Unicode characters that are indistinguishable to humans but may be processed differently by a computer. If you think that this is intentional, you can safely ignore this warning. Use the Escape button to reveal them.

lispusers/WHEELSCROLL
Written by Ron Kaplan, February 2021.
This small file adds the ability to scroll (scrollable) windows by rotating the wheel on a wheel mouse or by moving fingers on a track pad.
The capability is enabled when WHEELSCROLL.LCOM is loaded.
It is toggled on and off by
(ENABLEWHEELSCROLL ON) (initially (ENABLEWHEELSCROLL T))
The scrolling speed is controlled by the variable
WHEELSCROLLDELTA (initially 20)
The number of points to scroll for each click of the wheel. Higher values give faster scrolling.
Implementation:
Lisp receives a key transition on PAD1 ÿÿorÿ PAD2 for vertical scrolling when the wheel rotates and no other keys are down. (ENABLEWHEELSCROLL T) modifies the keyaction table maps these to characters 520 and 521, and those characters are defined as interrupts that invoke the scrolling action. (ENABLEWHEELSCROLL NIL) causes PAD1 and PAD2 to be ignored.
Current negative feature: When the middle button is transmitted as the wheel is depressed for middle-button effect (and no other keys are down), an accidental rotation of the wheel during the button transition (up and/or down) may cause unintended scrolling.
We need to develop a strategy, either in Lisp, Maiko, or X, to discriminate intended middle-button pushes from intended scrolling. This is not an issue for track-pad scrolling.CLASSIC
OñG