summaryrefslogtreecommitdiff
path: root/plugins/a11y-keyboard/msd-a11y-preferences-dialog.h
diff options
context:
space:
mode:
authorColomban Wendling <[email protected]>2020-06-11 11:56:29 +0200
committerRobert Antoni Buj Gelonch <[email protected]>2020-09-05 18:02:41 +0200
commit69a67a7f04fc5c0e36a290ad7a3e7afb4e801083 (patch)
tree0b1772b4f71e37a1ce3cf1235dd43d6fe43c20c7 /plugins/a11y-keyboard/msd-a11y-preferences-dialog.h
parent724206c586046ee313ede4c2da85e03149fb8c27 (diff)
downloadmate-settings-daemon-69a67a7f04fc5c0e36a290ad7a3e7afb4e801083.tar.bz2
mate-settings-daemon-69a67a7f04fc5c0e36a290ad7a3e7afb4e801083.tar.xz
a11y-keyboard: Manually beep for togglekeys
This allows a customizable and possibly different beep sequence when a togglekey is enabled or disabled. This is very useful for the user to know for sure whether the feature got enabled or disabled. Back in the days of buzzers, XKB was supposed to use different sounds for each of those, but this is no longer the case now in the vast majority of setups the beeps are intercepted and use a single recorded sound. XKB beeps are also unfortunately not configurable, although they possibly should be on paper: in theory, one could alter the bell used by listening to `XkbBellNotify` events, which provides a way to discriminate bells through a name. Unfortunately XKB's togglekeys seems to suffer from a bug (?) for a long time, in that it will always ring the `AX_IndicatorOn` bell if there is *at least one* indicator on at the moment the bell is rung, and `AX_IndicatorOff` if and only if *all* indicators are off. This makes it virtually useless as it is not possible to discriminate between an indicator getting turned on or off in most cases, especially with NumLock which often stays always on. Given this behavior dates at the very least as far back as X.org 1.16 which is from 2014, it probably is not very realistic to rely on a fix. So instead implement togglekeys on our end by listening to the `XkbIndicatorStateNotify` events.
Diffstat (limited to 'plugins/a11y-keyboard/msd-a11y-preferences-dialog.h')
0 files changed, 0 insertions, 0 deletions