¿Cómo hacer que X sea menos sensible al hacer clic derecho?

19

Cada vez que hago clic derecho en X, casi siempre parezco activar la primera opción en el menú a menos que esté pensando en lo que estoy haciendo porque:

  • Ratón hacia abajo; aparece el menú
  • Accidentalmente arrastre el mouse 1-3 píxeles hacia abajo y / o hacia la derecha
  • Ratón arriba; elemento de menú seleccionado

¿Hay alguna forma de modificar esto para que los menús no se activen tan fácilmente? Si es importante, estoy usando Gnome 3 / Cinnamon en Gentoo Linux.

Matthew Scharley
fuente
3
Solo una idea: no mantenga presionado el botón derecho y espere a que aparezca el menú, etc. Si suelta como en un clic normal, el menú permanece abierto y puede mover el mouse, sin seleccionar un elemento. (Probado con Gnome3) Probablemente sea más un hábito, pero no debería ser tan molesto si la gente lo usa a su manera, con el botón presionado. Las viejas cosas X siempre tuvieron ese comportamiento ya que el menú desaparecería tan pronto como sueltas el botón, sin importar si un elemento fue seleccionado o no.
vasquez
2
@vasquez: Sí, pero tengo una pantalla grande (27 ", 2560x1440) y mi mouse tiene una alta sensibilidad para ayudar a atravesarlo. No se necesita mucho para moverlo unos pocos píxeles, y mis hábitos han sido que . tiendo a hacer clic 'sobre la marcha' por así decirlo normalmente no haga clic y arrastre para seleccionar cosas de un menú, vengo de un fondo para la interfaz gráfica de usuario de Windows de.
Mateo Scharley
2
¿Podría ser una opción ajustar el tema GTK3? Es decir, cree un espacio interno más amplio del menú emergente (contexto) de modo que los 3 píxeles externos del menú no reaccionen al hacer clic. GTK3 admite temas a través de CSS, por lo que esto podría ser posible (y no demasiado difícil).
Sr_
@sr_: idea interesante. Lo investigaré si no hay otras respuestas para mañana, pero no tengo tiempo esta noche.
Matthew Scharley
1
¿Sabes qué? Me encantaría ver esta respuesta. Esto también me molesta.
whoami

Respuestas:

2

Preguntó cómo hacer esto en "X", pero esta configuración generalmente se controla a través de una utilidad de entorno de escritorio. En KDE tiene la configuración del mouse. Si su menú K no lo encuentra cuando simplemente escribe "mouse", puede iniciarlo

a) Menú K -> Computadora -> Configuración del sistema -> Dispositivo de entrada (bajo hardware) -> Mouse

o

b) En el símbolo del sistema, en una terminal u otro menú Ejecutar, ingrese el comando "configuración del sistema" y seleccione Dispositivo de entrada en la sección Hardware

Mire la "Pestaña Avanzada" en la Configuración del mouse de KDE y ajuste el Ajuste del umbral del puntero, el Tiempo de retraso de arrastre y la Distancia de arrastre. Aumente los valores para hacerlo menos sensible.

Hay utilidades similares en todos los demás entornos de escritorio que he usado.

Johan
fuente
1

Si está buscando una solución independiente de Desktop Environment, eche un vistazo a xinput.

Para obtener los nombres e ID de sus dispositivos de entrada X conocidos, primero ejecute

xinput --list

Verá la salida algo así:

~$ xinput --list
⎡ Virtual core pointer                          id=2    [master pointer  (3)]
⎜   ↳ Virtual core XTEST pointer                id=4    [slave  pointer  (2)]
⎜   ↳ SynPS/2 Synaptics TouchPad                id=11   [slave  pointer  (2)]
⎣ Virtual core keyboard                         id=3    [master keyboard (2)]
    ↳ Virtual core XTEST keyboard               id=5    [slave  keyboard (3)]
    ↳ Power Button                              id=6    [slave  keyboard (3)]
    ↳ Video Bus                                 id=7    [slave  keyboard (3)]
    ↳ Sleep Button                              id=8    [slave  keyboard (3)]
    ↳ HP HD Webcam [Fixed]                      id=9    [slave  keyboard (3)]
    ↳ AT Translated Set 2 keyboard              id=10   [slave  keyboard (3)]
    ↳ HP WMI hotkeys                            id=12   [slave  keyboard (3)]

Debajo de cada dispositivo maestro hay varios dispositivos esclavos. Identifique el dispositivo esclavo que utiliza por el nombre descriptivo. Seleccionaría el panel táctil Synaptics ya que eso es lo que uso, pero usted seleccionaría su mouse o cualquier otro dispositivo de puntero que tenga.

Ahora enumere las propiedades en ese dispositivo; puede usar el nombre del dispositivo (entre comillas) o la ID

xinput --list-props DEVICE

por ejemplo

~$ xinput --list-props 11
Device 'SynPS/2 Synaptics TouchPad':
        Device Enabled (132):   1
        Coordinate Transformation Matrix (134): 1.000000, 0.000000, 0.000000, 0.000000, 1.000000, 0.000000, 0.000000, 0.000000, 1.000000
        Device Accel Profile (254):     1
        Device Accel Constant Deceleration (255):       2.500000
        Device Accel Adaptive Deceleration (256):       1.000000
        Device Accel Velocity Scaling (257):    12.500000
        Synaptics Edges (258):  1767, 5395, 1649, 4613
        Synaptics Finger (259): 25, 30, 256
        Synaptics Tap Time (260):       180
        Synaptics Tap Move (261):       239
        Synaptics Tap Durations (262):  180, 180, 100
        Synaptics ClickPad (263):       0
        Synaptics Tap FastTap (264):    0
        Synaptics Middle Button Timeout (265):  75
        Synaptics Two-Finger Pressure (266):    282
        Synaptics Two-Finger Width (267):       7
        Synaptics Scrolling Distance (268):     100, 100
        Synaptics Edge Scrolling (269): 0, 0, 0
        Synaptics Two-Finger Scrolling (270):   0, 0
        Synaptics Move Speed (271):     1.000000, 1.750000, 0.039800, 40.000000
        Synaptics Edge Motion Pressure (272):   30, 160
        Synaptics Edge Motion Speed (273):      1, 435
        Synaptics Edge Motion Always (274):     0
        Synaptics Off (275):    0
        Synaptics Locked Drags (276):   0
        Synaptics Locked Drags Timeout (277):   5000
        Synaptics Tap Action (278):     0, 0, 0, 0, 0, 0, 0
        Synaptics Click Action (279):   1, 1, 0
        Synaptics Circular Scrolling (280):     0
        Synaptics Circular Scrolling Distance (281):    0.100007
        Synaptics Circular Scrolling Trigger (282):     0
        Synaptics Circular Pad (283):   0
        Synaptics Palm Detection (284): 0
        Synaptics Palm Dimensions (285):        10, 200
        Synaptics Coasting Speed (286): 20.000000, 50.000000
        Synaptics Pressure Motion (287):        30, 160
        Synaptics Pressure Motion Factor (288): 1.000000, 1.000000
        Synaptics Resolution Detect (289):      1
        Synaptics Grab Event Device (290):      1
        Synaptics Gestures (291):       1
        Synaptics Capabilities (292):   1, 0, 1, 1, 1, 1, 1
        Synaptics Pad Resolution (293): 74, 40
        Synaptics Area (294):   0, 0, 0, 0
        Synaptics Noise Cancellation (295):     8, 8
        Device Product ID (249):        2, 7
        Device Node (250):      "/dev/input/event8"

Tendrás que jugar con valores en diferentes propiedades. Realmente depende de las opciones que ofrece su dispositivo. Deberá leer la lista e intentar identificar cuáles están relacionadas con la sensibilidad.

Al mirar mi dispositivo, noto elementos como Tap Time, Tap Move, FastTap, etc. que, en mi opinión, están relacionados con la sensibilidad.

Generalmente lo harás

xinput --set-prop DEVICE PROPERTY VALUE. La página del manual lo explica así:

--set-prop [--type = atom | float | int] [--format = 8 | 16 | 32] valor de propiedad del dispositivo [...] Establezca la propiedad en los valores dados. Si no se especifica, el formato y el tipo de la propiedad se dejan como están. Los argumentos se interpretan de acuerdo con el tipo de propiedad.

Ejemplo

xinput --set-prop 11 261 250

Esto establecerá la Propiedad 261 del Dispositivo 11 en el valor de 250.

También puede usar el formato largo, especificar cada propiedad "nombre", por ejemplo

~$ xinput --set-prop "SynPS/2 Synaptics TouchPad" "Synaptics Off" 1

Tenga en cuenta que el ejemplo anterior apaga el panel táctil. Volver a ponerlo en "0" lo vuelve a encender.

Johan
fuente
La pregunta es sobre un mouse , no un touchpad.
Michael Hampton
@MichaelHampton No hay diferencia en cómo xinput maneja el uno sobre el otro. Usé el panel táctil como ejemplo, ya que eso es lo que tengo. Agregaré un comentario en la respuesta para aclarar esto.
Johan
No hay diferencia en xinput, claro. Pero el mouse no tendrá ninguna configuración relevante aquí.
Michael Hampton
El punto es que usa xinput para ajustar la configuración del puntero. O no entiendes lo que dije o no entiendo tu problema.
Johan
0

Si configura SystemSettings> Mouse (o algo similar), puede modificar la sensibilidad del mouse, el umbral de arrastrar y soltar, y hacer doble clic en el tiempo de espera.

Shugendo
fuente
0

Creo que @Johan dio buenas respuestas. Otra cosa para agregar es que puede intentarlo gconf-editor, que controla la configuración de Gnome. Probablemente sea accesible bajo algo como "Configuración del sistema", o puede iniciarlo desde la terminal.

hunter2
fuente
Gracias @ hunter2 ... He conectado varios dispositivos USB y otros dispositivos de puntero desde que escribí esa respuesta y resulta que la mayoría de ellos tienen opciones de sintonización muy limitadas. Esto puede solucionarse identificando el dispositivo específico, por ejemplo, a través de un controlador / configuración detallado en xorg.conf. Lamentablemente, eso no sucede automáticamente en mi sistema operativo (Kubuntu 12.10)
Johan
0

El tema de la GUI puede hacer una gran diferencia aquí. En este momento, la combinación de temas de Escritorio / Espacio de trabajo que utilizo dibuja menús contextuales con un área de "borde" inactiva que calculo que probablemente tenga unos 5 píxeles de ancho. Supongo que los conjuntos de temas para otros entornos de escritorio tienen variaciones similares. DEBE mover el puntero más allá de esta área inactiva antes de poder (accidentalmente) activar una opción.

Johan
fuente