<div dir="ltr"><div><div dir="ltr" class="gmail_signature" data-smartmail="gmail_signature"><div dir="ltr"><div><div><div>Hello,</div><div>I am working on the multimedia sequencer ossia score (<a href="https://ossia.io">https://ossia.io</a>).</div><div><br></div><div>I am trying to make sure that it works fine for Linux users under wayland.</div><div><br></div><div>For audio (and in general multimedia) apps, there is a very common family of GUI widget which allows to scroll a value "infinitely" (or at least much more than the height of the screen) - the usual user interaction is : <br></div><div>* User clicks on the widget : the mouse cursor disappears (some apps will give a kind of highlight to the widget to indicate that it is being acted upon)</div><div>* User moves their mouse upwards or downwards to increase the value</div><div>* At some point they reach the top or the bottom of the screen : to continue scrolling transparently, the app translates the mouse cursor to the top of the screen</div><div>* When the user releases the mouse the cursor reappears at the position where it was clicked.</div><div><br></div><div>This is needed in two case : <br></div><div>- To make sliders / knobs with easily adjustable values</div><div>- To implement infinite- or at least very long scrolling in minimaps.</div><div><br></div><div>I made a few videos: <br></div><div>- Video 1: example of slider with the feature in Ableton Live (one of the most used music making app) : <a href="https://streamable.com/ecepvc">https://streamable.com/ecepvc</a></div><div><br></div><div>- Video 2 : example of minimap in Ableton Live : <a href="https://streamable.com/epc7r1">https://streamable.com/epc7r1</a></div><div><br></div><div>- Video 3 : Example of the pain induced by software that do not support the feature: here I want to change the tempo but cannot because the mouse hits the top of the screen. Thus I have to release and go click on it again : <a href="https://streamable.com/bniht5">https://streamable.com/bniht5</a></div><div><br></div><div>Thus, my question is : what must I do as the developer of such an app to make sure that my users will have widgets that will work "as expected" for people in the media creation field, whatever the wayland compositor my users are using (KDE Plasma, GNOME, sway...). I don't want them to have an inferior user experience on Linux when compared to other operating systems.</div><div><br></div><div>The googling I've done so far seems to say that there is no way to position the cursor absolutely directly through wayland, but the only other way seems to be through /dev/uinput which needs root permissions to write to (and my userbase are artists who generally don't have the technical skillset to know that they must mark things as root; I could always check and show a popup that requests the user to do chmod u+rwx on /dev/uinput on startup but that would be my last resort...)<br></div><div><br></div><div>Thanks !</div><div>Jean-MichaĆ«l<br></div></div></div></div></div></div></div>