-
Notifications
You must be signed in to change notification settings - Fork 283
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Oni 2 doesn't support libinput smooth scroll events #325
Comments
Definitely!
Good catch... We're using GLFW (backed by X11) for input handling on Linux - which looks like it uses X11 events for processing scroll: (And they are discrete events, vs something smoother...) Using |
As I understand it, Wayland and X11 handle it differently but are both able to provide the same amount of information if XInput2 is used. I'd have to look into it further, but I know this is how GTK is able to provide continuous scroll events on both X11 and Wayland with Libinput and even the older Synaptics driver in a lot of cases. EDIT: Looks like the GLFW folks already know about this: glfw/glfw#1376 E2: Now I wonder what it does on Wayland, if I can get Oni2 running on a wayland session I'll report back on what happens. |
Nice find @szbergeron ! Good catch - seems like a bug that GLFW doesn't use the latest smooth scrolling APIs.
Unfortunately there is a blocking bug for this at the moment - our build of GLFW isn't set up to build wayland (today): https://github.com/bryphe/reason-glfw/issues/69 |
For GLFW not having a build support both X and Wayland is definitely not awesome, I'll see if I can peek around their source code and start making some patches. I'm not super familiar with the intricacies of Xinput2 but I can try my hand at it. |
Ya, it's a bummer that it needs separates builds for X / Wayland.
That would be awesome - thanks for the help! |
Update from discussion on discord: I'm looking into handling all input with Revery rather than pulling from GLFW, just because of the flexibility that would provide in how input gets handled, and should make this "just work" based on changes in Revery. |
This is entirely downstream at this point (revery, sdl2, libscroll) so probably doesn't need to be tracked here anymore |
This might be a little early to start asking for this, but it seems one of the goals of Oni 2 was to have smoother, more responsive, viewport movement and scrolling. On linux it doesn't currently seem to listen to or support LIBINPUT_POINTER_AXIS_SOURCE_CONTINUOUS and related discrete events to allow for smooth scrolling on devices using libinput. What work is required to get something along these lines working?
The text was updated successfully, but these errors were encountered: