[Bug] Mouse wheel scrolls 3 index pages instead of 1 on macOS
unilock opened this issue ยท 2 comments
On macOS specifically, when scrolling the mouse wheel to navigate between pages of EMI's index, each "click" of the wheel (individual event?) moves 3 pages ahead (or behind) instead of only 1 page.
This can be worked around by either enabling "Discrete Scrolling" in Minecraft's "Mouse Settings", or by installing another mod such as MacOS Input Fixes (both of which may not exist for every version).
As far as I know (and have tested), this issue persists across every EMI version, from 0.1.0 to 1.1.4, from Minecraft 1.4.7 to 1.20.4.
MouseTweaks has a similar issue, and has implemented a toggleable workaround for it ("ScrollItemScaling"):
- YaLTeR/MouseTweaks#22:
[ScrollItemScaling is a] way to have it transfer exactly one item on each scroll event, rather than proportionally to the wheel delta reported. This makes it match up with the "bumps" on my mouse's scroll wheel.
- GTNewHorizons/MouseTweaks#4
ScrollItemScaling allows either transferring an amount of items proportional to the scrolling speed (EDIT: as reported by the mouse), or always transferring only one item per scroll event (which is useful on macOS).
This is my (crude) workaround for retroEMI (source):
I'm not sure how applicable it is to modern EMI.
"Discrete Scrolling" is the option in minecraft that specifically ignores magnitude in scrolling, which EMI inherits from vanilla. Scrolling 3 pages at once, while weird, is "correct behavior" according to how minecraft defines scrolling events.
I guess that makes sense, but it does make EMI's various scrollable menus (the index, as well as recipe categories) difficult to navigate without manually clicking the arrow buttons - and Minecraft's own menus (the chat HUD, creative mode inventory, etc.) seem to move "too fast" with "Discrete Scrolling" enabled - all in my own opinion...
I would suggest that EMI have its own separate "Discrete Scrolling" option, but that's probably too niche a feature. (maybe I should just backport it to 1.4.7, sob)