Obtener el panel táctil de Synaptics para enviar eventos reales de rueda de desplazamiento

11

Tengo una computadora portátil (una Samsung Series 9) con un trackpad Synaptics, y tengo Windows XP.

Una de las buenas características de este panel táctil es que le permite desplazarse colocando dos dedos en el panel táctil y luego arrastrándolos hacia arriba o hacia abajo.

Pero lo realmente molesto es esto: en lugar de actuar como cualquier otra rueda de desplazamiento existente y enviar eventos de rueda de desplazamiento a Windows, por alguna razón, el trackpad Synaptics tiene una lógica especial para el desplazamiento. Cambia el cursor del mouse a un dibujo de una barra de desplazamiento y luego desplaza la ventana usando un mecanismo aparentemente propietario.

El problema con eso es que este desplazamiento no funciona en todas las aplicaciones. Por ejemplo, no funciona en aplicaciones basadas en GTK, que uso mucho.

Realmente no tengo idea de por qué los desarrolladores de Synaptics decidieron reinventar el desplazamiento de la rueda, a expensas de sus usuarios ...

De todos modos, ¿hay alguna manera de hacer que mi trackpad envíe eventos de rueda de desplazamiento estándar, para que funcione en todas las aplicaciones?

Ram Rachum
fuente
¿El controlador Synaptics tiene alguna configuración en Panel de control - Mouse ?
user1686
Claro, ese es el primer lugar que busqué, pero no encontré nada útil allí.
Ram Rachum

Respuestas:

8

Desde el desplazamiento en aplicaciones GTK + con controlador synaptics :

Al usar una computadora portátil con Windows, es posible que se quede atascado con un panel táctil sináptico.

Esos controladores malos con su llamado desplazamiento virtual crean una ventana falsa debajo del cursor para mostrar su icono de desplazamiento personalizado.

Esa ventana interfiere con la señal enviada a la aplicación, y GTK por alguna razón no puede detectar eso (lo más probable es que los desarrolladores no se preocupen por nosotros). El resultado es no poder desplazarse en aplicaciones populares de GTK como Wireshark o Pidgin.

Después de jugar con Spy ++ y Procmon por algún tiempo, encontré una clave de registro interesante que resolvió mi problema. Esta configuración deshabilitará el cursor personalizado cuando se desplace, solucionando efectivamente el problema de desplazamiento en las aplicaciones GTK.

Primero tienes que abrir regedit. Navegue
HKEY_LOCAL_MACHINE\SOFTWARE\Synaptics\SynTPEnh
y cree un nuevo DWORD llamado UseScrollCursorcon un valor de 0.

Reinicie SynTPEh (o reinicie).

El desplazamiento debería funcionar en las aplicaciones GTK ahora, pero ya no verá el cursor de desplazamiento.

harrymc
fuente
¡Muchas gracias, tuve el mismo problema y fue muy molesto!
Laurent le Beau-Martin
Esto también funciona para aplicaciones como Zune, ¡gracias!
relatividad
funciona con Synaptics 17, pero no con la versión 15 (al menos en mi Dell XPS L501x). Sin embargo, un buen consejo, ya que instalé la versión 17 incluso cuando Windows dijo que podría mutilar permanentemente mi hardware: P ¡Funciona de maravilla!
kumarharsh
1

Déjame explicarlo de esta manera. El panel táctil en sí tiene absolutamente cero concepto de desplazamiento. siente un toque ... e informa de una X e Y. El conductor toma esa información ... y determina cómo interpretarla como varios gestos con el mouse. Entonces ... en resumen ... depende del conductor determinar qué WTF es un desplazamiento. Entonces, el problema aquí es el controlador ... o la configuración del controlador. Y dado que no especificó qué sabor de Linux ... sus resultados podrían ser bastante mixtos. Synaptics creó una suite para sabores comunes de Linux ... pero lo que necesita para adquirirlos ... o si está disponible para su distribución ... está más allá de mí.

TheCompWiz
fuente
1
No es Linux, es Windows XP. ¿Eso ayuda?
Ram Rachum
GTK no es nativo de Windows ... puede haber problemas al traducir los mensajes de desplazamiento de Windows a algo que GTK entiende.
TheCompWiz
2
Los mismos mensajes de desplazamiento se usan para los paneles táctiles y las ruedas del mouse, y GTK2 funciona bien con este último (de hecho, lo he probado con ambos).
user1686
1
Intente actualizar los controladores en Windows para su panel táctil. synaptics.com/resources/drivers Es posible que tenga mejor suerte.
TheCompWiz
Revisé la página de controladores, y extrañamente tengo una versión más avanzada. Tengo 15.3.22.0 mientras que la página de controladores ofrece 15.2.20.
Ram Rachum
0

Hay una opción pinchzoom para mi mouse sináptico que emula un desplazamiento de rueda. Mire debajo del mouse> configuración del dispositivo> configuración. Coloca dos dedos en el mousepad y los acerca más o más y se desplazará de una manera u otra.

invitado
fuente