Ah é você, me enviando os passos antes Bom que você coloque aqui, então é mais fácil recuperar, no caso, as pessoas precisam disso na próxima versão
Recentemente, adquiri um novo Wacom Mobile Studio Pro 13. Um computador tablet (sem trackpad, sem teclado físico, apenas alguns botões no lado esquerdo, com uma caneta Wacom).
Quando faço login pela primeira vez em uma conta, digitando a senha com o teclado na tela, a tecla Shift funciona bem. Mas após o login e na tela de bloqueio, a tecla Shift não capitaliza letras quando usada, embora o teclado visualmente pareça estar funcionando. Isso impossibilita o login da tela de bloqueio, exigindo uma inicialização difícil.
Eu testei em um editor de texto para confirmar que ele não está funcionando conforme descrito.
Não sei se algo está faltando, e não sei como começar a solucionar esse problema.
Aqui está uma captura de tela rápida do problema, caso minha descrição não seja suficiente.
Ah é você, me enviando os passos antes Bom que você coloque aqui, então é mais fácil recuperar, no caso, as pessoas precisam disso na próxima versão
Aqui está uma solução que só funciona no Xorg, não no Wayland.
Nós modificaremos o arquivo binário, /usr/lib/gnome-shell/libgnome-shell.so
.
Faça um backup do arquivo original.
sudo cp /usr/lib/gnome-shell/libgnome-shell.so /usr/lib/gnome-shell/libgnome-shell.so.original
Veja a parte do arquivo que vamos modificar.
xxd /usr/lib/gnome-shell/libgnome-shell.so | grep -A3 "ribou.DisplayA"
A saída ficará assim, mostrando que o Caribou usa o novo LocalAdapter
do Gnome Shell para manipular as teclas virtuais pressionadas.
001150d0: 4361 7269 626f 752e 4469 7370 6c61 7941 Caribou.DisplayA
001150e0: 6461 7074 6572 2e73 6574 5f64 6566 6175 dapter.set_defau
001150f0: 6c74 286e 6577 204c 6f63 616c 4164 6170 lt(new LocalAdap
00115100: 7465 7228 2929 3b0a 0a20 2020 2020 2020 ter());..
Comente a parte do código que diz ao Caribou para usar o LocalAdapter
do Gnome Shell. O Caribou então assumirá o seu próprio XAdapter
, que funciona apenas no X11.
sudo sed -i 's|\x43\x61\x72\x69\x62\x6f\x75\x2e\x44\x69\x73\x70\x6c\x61\x79\x41|\x2f\x2f\x72\x69\x62\x6f\x75\x2e\x44\x69\x73\x70\x6c\x61\x79\x41|g' /usr/lib/gnome-shell/libgnome-shell.so
Verifique se /usr/lib/gnome-shell/libgnome-shell.so
foi modificado corretamente.
xxd /usr/lib/gnome-shell/libgnome-shell.so | grep -A3 "ribou.DisplayA"
A saída ficará assim, mostrando que a linha foi comentada agora.
001150d0: 2f2f 7269 626f 752e 4469 7370 6c61 7941 //ribou.DisplayA
001150e0: 6461 7074 6572 2e73 6574 5f64 6566 6175 dapter.set_defau
001150f0: 6c74 286e 6577 204c 6f63 616c 4164 6170 lt(new LocalAdap
00115100: 7465 7228 2929 3b0a 0a20 2020 2020 2020 ter());..
Desative o Wayland e use o X11 na tela do GDM (login).
sudo sed -i "s|#WaylandEnable=false|WaylandEnable=false|g" /etc/gdm3/custom.conf
Certifique-se de que WaylandEnable
não tenha sido comentado e esteja definido como false
na configuração do GDM.
cat /etc/gdm3/custom.conf | grep -B1 WaylandEnable
A saída deve ser exatamente assim.
# Uncoment the line below to force the login screen to use Xorg
WaylandEnable=false
Por fim, reinicie para tornar as alterações efetivas.
Como a solução acima é apenas uma solução alternativa, registre-se no Launchpad e no Bugzilla, e marque a si mesmo como impactado, para que esse bug seja corrigido ...
Anular / reverter alterações
Se suas saídas das etapas 4 e 5 corresponderem ao que foi mostrado acima, as alterações foram feitas com sucesso. Se você precisar reverter essas alterações, faça o seguinte:
Para cancelar as alterações no passo 4 ...
sudo cp /usr/lib/gnome-shell/libgnome-shell.so.original /usr/lib/gnome-shell/libgnome-shell.so
Para cancelar as alterações no passo 5 ...
sudo sed -i "s|WaylandEnable=false|#WaylandEnable=false|g" /etc/gdm3/custom.conf