Eu tenho um laptop conversível HP ENVY 13-ay0000 x360 com uma CPU AMD Ryzen 5 4500U executando Ubuntu 22.10. A rotação automática não está funcionando e o teclado e o touchpad só serão desativados se o laptop estiver completamente dobrado para trás, mas não entre eles. Acredito que seja devido a este bug:https://bugzilla.kernel.org/show_bug.cgi?id=212615.
Como solução alternativa, eu estava tentando girar a tela e desabilitar o teclado manualmente por meio de um script ou algo parecido. Consegui fazer funcionar a rotação da tela e a desativação do touchpad, mas estou lutando para descobrir como desativar e reativar o teclado. Usar o xinput não funciona porque estou usando o wayland. Eu verifiquei este tópico:https://unix.stackexchange.com/questions/381944/how-to-disable-internal-keyboard-on-fedora-26-wayland
Mas nenhuma das soluções funcionou, pois preciso desativar e reativar sob demanda e não permanentemente. Tentei capturar os eventos do teclado, mas isso fez com que a tela sensível ao toque e o touchpad se comportassem de maneira irregular.
Alguma idéia de como isso poderia ser alcançado?
Responder1
Para usuários com xwayland, primeiro encontre o ID do evento.
$ libinput list-devices
Se necessário, instale o libinput (sudo apt install libinput-tools). Isso listará todos os dispositivos de entrada e seu ID de evento. Role para encontrar a seção correta (algo como "AT Translated Set 2 keyboard") e encontre a linha Kernel: /dev/input/event#. Use o event# para o próximo comando:
$ udevadm info -a -p /sys/class/input/event#
Encontre um atributo que provavelmente seja único/distinto. Por exemplo, ATTRS{name}=="AT Translated Set 2 keyboard" e, em seguida, crie o arquivo de regras
sudo nano /etc/udev/rules.d/99-disable_touchscreen.rules
com a seguinte regra
KERNEL=="event*", ATTRS{name}=="AT Translated Set 2 keyboard", ENV{LIBINPUT_IGNORE_DEVICE}="1"
Em seguida, verifique se funcionou seguindo o comando:
$ udevadm test /sys/class/input/event#
e procure por
LIBINPUT_IGNORE_DEVICE=1
provavelmente nas últimas 3 linhas. Em seguida, reinicie e seu teclado interno deverá ser desativado.
Cortesia:https://wiki.archlinux.org/title/Dell_XPS_13_(9343)#Disable_the_touchscreen