mirror of
https://github.com/debauchee/barrier.git
synced 2026-05-15 14:16:02 -06:00
[GH-ISSUE #800] Jumpy scrolling on Mac Client with Mac server #632
Labels
No labels
HiDPI
bounty
bsd/freebsd
bsd/openbsd
bug
bug
build-infra
cantfix
critical
doc
duplicate
enhancement
fix-available
from git
from release
good first issue
help wanted
installer/package
invalid
linux
macOS
meta
needs testing
pull-request
query
question
regression
regression
v2.4.0
windows
wontfix
work-in-progress
No milestone
No project
No assignees
1 participant
Notifications
Due date
No due date set.
Dependencies
No dependencies set.
Reference: github-starred/barrier#632
Loading…
Add table
Add a link
Reference in a new issue
No description provided.
Delete branch "%!s()"
Deleting a branch is permanent. Although the deleted branch may continue to exist for a short time before it actually gets removed, it CANNOT be undone in most cases. Continue?
Originally created by @jkaufman on GitHub (Jul 17, 2020).
Original GitHub issue: https://github.com/debauchee/barrier/issues/800
Operating Systems
Server: macOS Catalina 10.15.5
Client: macOS Catalina 10.15.5
Barrier Version
2.3.3-release-3395cca9
Steps to reproduce bug
Other info
I see a possibly related bug (#64) and found references to
yScrollin Synergy (https://coderazzi.net/linux/synergy.patch/index.htm), but have not found a way to set this option in Barrier.@2600box commented on GitHub (Jul 20, 2020):
I'm new to Barrier and have just installed it on two macs. I am seeing the same jumpy scrolling behaviour in the client as described in this issue.
@drew-t commented on GitHub (Jul 22, 2020):
Same issue here. New install. Server and client are both OS X Catalina 10.15.5.

@Unknown-Guy commented on GitHub (Aug 14, 2020):
Same problem but with Win as server.
Server: Windows 10 Home 64-bit (10.0, Build 18363)
Client: MacOS 10.15.6
Barrier 2.3.3 on both
Win is wired, mac is on WiFi
Ping from mac
I guess I'll add that this is same for mouse cursor.
@Laibalion commented on GitHub (Sep 18, 2020):
I'm also observing the same issue. Both devices are wired and using version 2.3.3
Other mouse interaction works seamlessly, only scrolling is jumpy.
@Laibalion commented on GitHub (Sep 18, 2020):
Just noticed something. I'm using Logitech MX Vertical and had 'Smooth scrolling' enabled.
After disabling this, scrolling started working fine on the 'client'
@OKNoah commented on GitHub (Nov 21, 2020):
It seems like the app emulates Windows' mouse click wheel scrolling, even on Mac client/servers with Trackpads. Also, all but one scroll motion is reversed. And gestures are ignored.
@cfiske commented on GitHub (Nov 25, 2020):
I am seeing what I believe is the same issue. My observation is not that scrolling is jumpy on clients, but that it scrolls at least twice as fast on client as on server (both MacBook Pro, both Catalina 10.15.7, both Barrier version 2.3.3). It happens using either the built-in trackpad or the external Magic Trackpad.
@MadLittleMods commented on GitHub (Dec 16, 2020):
I am reproducing the same problem.
Environment:
There is a nice superuser answer about using the
--yscrollargument to adjust the scroll jump, or making it more permanent by replacing thesynergycbinary with the--yscrollargument but I was unable to get these to work with Barrier.Trying different values of
10,100, etc seem to have no difference trying to configure on the Barrier client.The
--yscroll <delta>option is mentioned in the help:Looking through the Barrier code, it seems like the
--yscrolloption is still in place,src/test/unittests/barrier/ClientArgsParsingTests.cpp#L40-L52I also looked into configuring this on the Barrier server but
barriershas different options and doesn't make sense to configure here anyway.`barriers.exe --help`
@gazoakley commented on GitHub (Feb 1, 2021):
Looks like the code the client uses to simulate scroll events on MacOS is here:
fc045fc793/src/lib/platform/OSXScreen.mm (L673)Related Apple docs:
https://developer.apple.com/documentation/coregraphics/1541327-cgeventcreatescrollwheelevent
https://developer.apple.com/documentation/coregraphics/cgscrolleventunit
It looks like changing this to use kCGScrollEventUnitPixel (as the comment in the code also suggest) might resolve the issue.
@ylluminate commented on GitHub (Mar 28, 2021):
Same here and it seems as though @gazoakley may be right. Have you tried this fix and compiling an update to see how it works?
@AryaTwirl commented on GitHub (Nov 3, 2021):
Hi, does this mean I only need to change that to kCGScrollEventUnitPixel and compile it? Not experienced in programming, so wanna make sure that's what I need to do. Also, can you confirm this really works? Thank you.
@henrijaeger commented on GitHub (May 28, 2023):
Hey guys, did anyone manage to get yscroll working in the end?
I am having the same issue on my machine - scrolling on the client is almost twice as fast compared to the server...
@jkfran commented on GitHub (Aug 10, 2023):
Any updates?
@wallneradam commented on GitHub (Sep 24, 2023):
I've found a solution.
Change the
onMouseMovemethod insrc/lib/platform/OSXScreen.mmto this:The trick is to add 120 to the delta if it is different than zero. After this it works amost the same way as in MacOS.
@gabrielpersaud commented on GitHub (Oct 2, 2023):
Hi thanks for your work on this. I've tried to implement your solution but I keep getting errors when running clean_build.sh. Could you upload your build?
@wallneradam commented on GitHub (Oct 2, 2023):
You need to install QT5 to be able to build it. Either with
brew(Homebrew) or withports(MacPorts). If both of them installed you will get error.But I uploaded my build to Google Drive. It also includes some other patches from pull requests. It works wonderfully for my needs:
https://drive.google.com/file/d/17mz6uGWVoSDp_aDTLdV-GDLLJgicFdnu/view?usp=sharing
Though if someone can build it on its own, it is better, because you cannot trust random binaries from the internet...
@gabrielpersaud commented on GitHub (Oct 2, 2023):
I have them installed but I got an error about gmock and gtest missing. Someone else said 2.3.0 didn't have this problem. That gave me a new error (image). Googling this I only found something about a new version of cmake breaking the build. Maybe you have an idea?
Although the repo states that the latest version of barrier should work on 10.12 and later, for some reason your build works for me on my server (12.6.8) but not the client an old MBP (10.15.7)
@wallneradam commented on GitHub (Oct 2, 2023):
@gabrielpersaud As I said you need to install QT5, the easiest way is by using Homebrew.
I don't think barrier will work with that old MacOS (OSX?). My OS is Ventura 13.6. But don't know the minimum version for the binary.
@gabrielpersaud commented on GitHub (Oct 2, 2023):
Yup I have QT5 the most recent version. Would you pretty please build this one for me?? I've already put in your scrolling mod
barrier-2.3.3.zip