COSMIC atspi

atspi accessibility protocol

This protocol provides a relatively straightforward mapping of AtpsiDevice in the at-spi2-core library, so it's possible to add a Wayland backend for it.

This provides a way for screen reader key bindings to work.

This is a temporary solution until a better protocol is available for this purpose.

atspi manager global

Manager for adding grabs and monitoring key input.

destroy()
Destroy the global

Any grabs that are still active will be disabled.

add_key_grab(mods: uint, virtual_mods: array, key: uint)
Argument
Type
Description
modsuint
modifiers
virtual_modsarray
keycodes of virtual modifiers
keyuint
keycode
Add grab for key combination

Grab the given key combination, so it will not be sent to clients.

remove_key_grab(mods: uint, virtual_mods: array, key: uint)
Argument
Type
Description
modsuint
modifiers
virtual_modsarray
keycodes of virtual modifiers
keyuint
keycode
Remove grab for key combination

Disables a grab added with add_key_grab.

grab_keyboard()
Grab keyboard

Grab keyboard, so key input will not be sent to clients.

ungrab_keyboard()
Ungrab keyboard

Disables a grab added with grab_keyboard.

key_events_eis(fd: fd)
Argument
Type
Description
fdfd
eis file descriptor
Get eis socket fd

Produces an fd that can be used with libei to monitor keyboard input.


Compositor Support

Mutter
Mutter
48.0
KWin
KWin
6.4
Sway
Sway
1.11
COSMIC
COSMIC
...
Hyprland
Hyprland
0.48
niri
25.02
Weston
Weston
14
Labwc
Labwc
0.9.0
Cage
Cage
0.2.0
Wayfire
Wayfire
0.9.0
GameScope
GameScope
3.15.14
Jay
1.11.0
Mir
Mir
2.19
Treeland
Treeland
0.5.20
Louvre
Louvre
2.14.1
cosmic_atspi_manager_v1
x
x
x
1
x
x
x
x
x
x
x
x
x
x
x

Copyright © 2024 System76

Permission is hereby granted, free of charge, to any person obtaining a copy of this software and associated documentation files (the "Software"), to deal in the Software without restriction, including without limitation the rights to use, copy, modify, merge, publish, distribute, sublicense, and/or sell copies of the Software, and to permit persons to whom the Software is furnished to do so, subject to the following conditions:

The above copyright notice and this permission notice (including the next paragraph) shall be included in all copies or substantial portions of the Software.

THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.