https://bugs.kde.org/show_bug.cgi?id=477787

--- Comment #4 from Nicolas Fella <nicolas.fe...@gmx.de> ---
https://invent.kde.org/plasma/kwin/-/merge_requests/7348 is mostly unrelated to
this.

Currently the situation is this:

On Wayland input from pad buttons, rings, and strips is forwarded to the active
application like any input. Applications then can make use of that input to
trigger actions, zoom, scroll, whatever they like. Unfortunately there seem to
be very few applications that make use of this ability, probably in large part
because as far as I know it's not possible to do the same on X11. The only
application I remember seeing making use of pad buttons directly is GIMP.

The information about what modes are available and which one is active is also
sent to applications, so applications can perform different actions depending
on the mode. This was a bit broken in KWin,
https://invent.kde.org/plasma/kwin/-/merge_requests/6951 fixed it.

Global rebinding of pad buttons in Systemsettings has been possible for a
while, but currently it doesn't allow rebinding depending on the mode.
Implementing that wouldn't be very hard. Suggestions on how to represent this
in the UI would be welcome.

Globally rebinding rings and strips is not currently possible, but could be
implemented. If implemented it could be implemented in a way that allows
rebinding per mode.

What https://invent.kde.org/plasma/kwin/-/merge_requests/7348 does is adding
support for a new kind of input: dials. Dials are very similar to rings, but
they differ in how they report their input. Rings transmit an absolute angle
value (0-360 degrees) while dials only report relative values similar to scroll
wheels. 

https://invent.kde.org/plasma/kwin/-/merge_requests/7348 adds that dial events
are forwarded to applications, just like buttons, rings, and strips are.

https://invent.kde.org/plasma/kwin/-/merge_requests/3512 has code to rebind
dials to scroll events, and could be extended to also cover rings and strips.

That said IMO we should be pushing applications towards natively supporting
buttons, rings, strips, and dials, since they are in a much better position to
make use of the events as good as possible than globally rebinding them to
pointer events

-- 
You are receiving this mail because:
You are watching all bug changes.

Reply via email to