Caribou na tecla Shift tecla do teclado não funciona

4

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.

link

    
por lachoneus 06.12.2017 / 06:52

2 respostas

0

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

    
por Son Nguyen 02.01.2018 / 08:01
0

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 .

  1. Faça um backup do arquivo original.

    sudo cp /usr/lib/gnome-shell/libgnome-shell.so /usr/lib/gnome-shell/libgnome-shell.so.original
    
  2. 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());.. 
    
  3. 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
    
  4. 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());..
    
  5. 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
    
  6. 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
    
por PJ Singh 24.12.2017 / 21:48