Conseguir que o trackpad Synaptics envie eventos reais de rolagem

11

Eu tenho um laptop (um Samsung Series 9) com um trackpad Synaptics e tenho o Windows XP nele.

Um dos recursos interessantes deste trackpad é que ele permite rolar colocando dois dedos no trackpad e arrastando-os para cima ou para baixo.

Mas o mais irritante é o seguinte: em vez de agir como qualquer outra roda de rolagem existente e enviar eventos da roda de rolagem para o Windows, por algum motivo, o trackpad Synaptics possui uma lógica especial para rolagem. Ele muda o cursor do mouse para o desenho de uma barra de rolagem e, em seguida, rola a própria janela usando um mecanismo aparentemente proprietário.

O problema é que essa rolagem não funciona em todos os aplicativos. Por exemplo, ele não funciona em aplicativos baseados em GTK, que eu uso muito.

Eu realmente não tenho idéia do por que os desenvolvedores do Synaptics optaram por reinventar a rolagem de roda, às custas de seus usuários ...

De qualquer forma, existe uma maneira de fazer meu trackpad enviar eventos de roda de rolagem padrão, para que funcione em todos os aplicativos?

Ram Rachum
fonte
O driver Synaptics tem alguma configuração no Painel de controle - Mouse ?
precisa saber é o seguinte
Claro, esse foi o primeiro lugar que procurei, mas não encontrei nada útil lá.
Ram Rachum

Respostas:

8

De rolagem em aplicativos GTK + com driver synaptics :

Ao usar um laptop Windows, você pode ficar com um touchpad sináptico.

Esses drivers ruins com sua chamada rolagem virtual criam uma janela falsa abaixo do cursor para exibir seu ícone de rolagem personalizado.

Essa janela interfere no sinal enviado para o aplicativo abaixo, e o GTK, por algum motivo, não pode detectar isso (provavelmente os desenvolvedores não se importam conosco). O resultado é não poder rolar em aplicativos GTK populares como o Wireshark ou o Pidgin.

Depois de jogar com o Spy ++ e o Procmon por algum tempo, encontrei uma chave de registro interessante que resolveu meu problema. Essa configuração desativará o cursor personalizado quando você rolar, corrigindo efetivamente o problema de rolagem nos aplicativos GTK.

Primeiro você tem que abrir o regedit. Navegue
HKEY_LOCAL_MACHINE\SOFTWARE\Synaptics\SynTPEnh
e crie um novo DWORD chamado UseScrollCursorcom o valor 0.

Reinicie o SynTPEh (ou reinicie).

A rolagem deve funcionar nos aplicativos GTK agora, mas você não verá mais o cursor de rolagem.

harrymc
fonte
Muito obrigado, tive o mesmo problema e foi muito chato!
Laurent le Beau-Martin
Isso funciona bem também para aplicativos como o Zune, obrigado!
Unrelativity
funciona com o Synaptics 17, mas não com a versão 15 (pelo menos no meu Dell XPS L501x). Um bom conselho, como eu instalei a versão 17, mesmo quando o Windows disse que poderia mutilar permanentemente meu hardware: P Funciona como um encanto!
precisa saber é o seguinte
1

Deixe-me explicar dessa maneira. O próprio touchpad possui absolutamente 0 conceito de rolagem. sente um toque ... e reporta um X e Y. O motorista pega essa informação ... e determina como interpretá-la como vários gestos do mouse. Então ... em suma ... cabe ao driver determinar WTF que é um pergaminho. Portanto, o problema aqui é o driver ... ou a configuração do driver. E como você não especificou qual sabor do linux ... seus resultados podem ser bastante mistos. A Synaptics criou um conjunto para os sabores comuns do Linux ... mas o que você precisa para adquiri-los ... ou se estiver disponível para sua distribuição ... está além de mim.

TheCompWiz
fonte
1
Não é Linux, é Windows XP. Isso ajuda?
Rachum
O GTK não é nativo do Windows ... pode haver problemas na conversão de mensagens de rolagem do Windows para algo que o GTK entende.
TheCompWiz
2
As mesmas mensagens de rolagem são usadas para touchpads e rodas do mouse, e o GTK2 funciona bem com o último (na verdade, eu testei com os dois).
user1686
1
Tente atualizar drivers no Windows para o seu touch pad. synaptics.com/resources/drivers Você pode ter mais sorte.
TheCompWiz
Verifiquei a página de drivers e, estranhamente, tenho uma versão mais avançada. Eu tenho 15.3.22.0 enquanto a página de drivers oferece 15.2.20.
Rachum Ram
0

Existe uma opção de pinchzoom para o meu mouse sináptico que emula uma rolagem de roda. Procure em mouse> configurações do dispositivo> configurações. Você coloca dois dedos no mousepad e os aproxima um do outro ou mais afastados, e ele rolará de uma maneira ou de outra.

hóspede
fonte