Léxico de TI › Infraestrutura › libinput

libinput

Infraestrutura Svenska → Atualizado: 2026-10-10
Mais informações
Criado por
Jonas Ådahl, Peter Hutterer
Ano
Tipo
Biblioteca
Licença
MIT
Código-fonte
gitlab.freedesktop.org/libinput/libinput

A biblioteca que interpreta mouses, touchpads, telas sensíveis ao toque e mesas digitalizadoras tanto para compositores Wayland quanto para o servidor X — substituindo um driver por tipo de dispositivo por um único conjunto de regras, para alegria de todos, menos de quem gostava dos botões de ajuste do synaptics.

No X.Org, a lógica de entrada ficava nos drivers: evdev para mouses e teclados, synaptics para touchpads, wacom para mesas, cada um com a sua noção de aceleração, rolagem e detecção de toque. Os compositores Wayland teriam que reescrever tudo isso, cada um por conta própria. Jonas Ådahl separou o código de entrada do Weston numa biblioteca independente em 2013, Peter Hutterer, da Red Hat, assumiu a manutenção em 2014 e o libinput 1.0 saiu em agosto de 2015. Ele lê os dispositivos evdev do kernel e entrega eventos já interpretados: aceleração do ponteiro, rolagem com dois dedos, gestos, tocar para clicar, rejeição de palma, emulação de botões e um touchpad que se cala enquanto você digita.

Weston, Mutter, KWin, wlroots e Mir o usam diretamente e, por meio do xf86-input-libinput de 2015, o servidor X também, o que permitiu às distribuições aposentar o synaptics. A filosofia é que a biblioteca decide o que faz sentido e expõe poucos botões — "o libinput não faz isso" virou a resposta padrão a pedidos pela 47ª configuração, e curvas de aceleração personalizadas só chegaram em 2023. As esquisitices dos dispositivos vão para um banco de dados de quirks, e o libinput debug-events é a ferramenta padrão quando um touchpad se comporta mal. O mesmo código que decide como o cursor se move no GNOME agora faz isso no Sway, o que é mais do que o X jamais conseguiu.

← Voltar ao léxico