are you using the reverse scroll direction modifier or the old reverse scroll direction option in the settings ? the modifier allows to only apply to normal mice - however if the accessibility apps pose as normal mouse this might not help. Applying to specific device identifiers is not possible unfortunately
ah, I thought it was some special accessibility tools. These are just using the standard CGEvent APIs. I can probably add an option to ignore events from specific processes.
By the way, you can also easily set up keyboard scrolling with BTT:
Ignoring events from other apps would be beneficial, and it would be helpful to allow users to select which apps to exclude. For example, exclude events from Homerow but not from Mos.
Thank you for the suggestion! I was unaware of the smooth scrolling feature for the keyboard. I experimented with it briefly but could not replicate the behavior of KeyboardScroller or Homerow.
With KS, I use Hyper + J to scroll down, and I can hold down Hyper; each time I press J, it scrolls down slightly. With BTT, it seems I must release all keys before scrolling occurs.
In Homerow, I can use a shortcut such as Hyper + S to enter scroll mode and then use J/K to scroll down/up, GG to go to the top (especially useful for long documents), SHIFT + G to go to the bottom, etc. Pressing Esc exits the scroll mode. If multiple scrollable elements are present, you can select one using a number, and then scroll within that element.
Anyway, thank you for introducing these cool features in BTT. I’ve been using the Hyper feature for some time now and no longer need to run Karabiner-Elements just to add Hyper/Esc support.
Edit: If I enable “Simulate Trackpad Scrolling” in the Smooth Scroll settings, then I can hold that the modifier and press the other key to scroll. However, if this option is unchecked, I have to release the modifier and the key for the scrolling to work. In the former case, the same key combination scrolls down while in the latter it scrolls up (because I have Inverse scroll setting enabled).
Edit 2: The Smooth Scroll + Simulate Trackpad Scrolling is actually not affected by Mos, which is really nice.
Another pitfall of using multiple applications for smooth scrolling or keyboard scrolling is their potential to interfere with one another. For example, Mos's smooth scrolling causes the scrolling in KS or Homerow to also become smooth, which is great; however, each time I press J or K, it results in excessive scrolling due to Mos’s settings, rendering KS or Homerow ineffective.
Hopefully, we can have all these features in BTT one day and prevent such collisions.
In 6.189 I have added an additional scroll modifier "Ignore Events From Specific Application". You need to provide the app names or bundle identifiers:
For this modifier the position in the list of modifiers is especially relevant. Any modifier that comes before it will still apply, any modifier that comes after it will not apply to events from the specified apps. If you place it at the top of the list like in my screenshots, no other scroll modifier will interact with the events from the specified apps.
For future readers, use “Reverse Scroll Direction” instead of “Inverse scrolling …” from the settings.
Edit:
Since applications like Homerow and Keyboard Scroller run in the background, I suspect this scroll modifier doesn't affect them.
This is also explained in the modifier's documentation, which indicates that it only affects the frontmost application.
BTT has introduced many great features recently (I’ve been a long-time user), and I’m hoping we’ll see smooth scrolling and keyboard-based scrolling added in the future so everything can be integrated into one great app. I can submit a few feature requests like this one and this one just to have some of these features under the radar.
I appreciate the "Smooth Scroll" feature mentioned in a previous post. It works exceptionally well, does not interfere with the scrolling behavior of other applications (like Mos does), and remains unaffected by Mos, so scrolling does not become much faster when Mos is open.
The only limitation I have observed so far is that in tmux, users must release all keys, including the modifier, for the scroll function to work, whereas Keyboard Scroller does not require this. I will investigate whether any settings in tmux can be changed to resolve this issue and will share an update if I find something useful.
May I ask what events are emitted by this scrolling feature that makes it unaffected by Mos? Do you happen to know what tmux expects for scrolling events and how they are different from what BTT emits?
What do you mean by "unaffected by Mos"? (I'm not very familiar with Mos)
Unfortunately I also don't know much about tmux, but if necessary you could disable the scroll modifier while tmux is active?