Gestos de parpadeo

Windows Vista incluye un conjunto de ocho gestos básicos de parpadeo. Los parpadeos son movimientos rápidos y lineales del lápiz asociados a las acciones y comandos de desplazamiento.

Detalles de Flick

La característica de parpadeos proporciona al usuario una nueva forma de interactuar con el pc tableta al permitir que las acciones comunes se realicen realizando gestos rápidos con el lápiz. Los parpadeos coexisten y no interrumpen las acciones normales del usuario, como pulsaciones izquierda y derecha, desplazamiento e entrada manuscrita.

Un parpadeo es un gesto de lápiz unidireccional que requiere que el usuario se comunique con el digitalizador en un movimiento rápido de parpadeo. Un parpadeo se caracteriza por alta velocidad y un alto grado de recta. Un parpadeo se identifica por su dirección. Los parpadeos se pueden hacer en ocho direcciones correspondientes a las direcciones cardinales y secundarias de la brújula.

Una acción o acción de parpadeo es la acción o el acceso directo realizado en respuesta a un parpadeo. Los parpadeos se asignan a las acciones. En la ilustración siguiente se muestra un diagrama de ocho parpadeos de lápiz que corresponden a sus acciones de parpadeo.

ilustración en la que se muestra el mapa de gestos

A medida que el usuario mueve el lápiz sobre el digitalizador de un pc tablet, el hardware genera paquetes de lápiz que se enrutan al subsistema de entrada del lápiz de la plataforma tablet PC. Normalmente, si el lápiz se usa como sustituto del mouse, el subsistema de entrada del lápiz toma estos paquetes de lápiz y los envía, posiblemente con modificaciones, a User32, el componente de Windows responsable de procesar la entrada del mouse. Si el lápiz se usa en una superficie de entrada manuscrita, la entrada de lápiz se representa en lugar de los paquetes del mouse que se generan.

La rutina de detección de parpadeo se implementa en el subsistema de entrada del lápiz. La detección de parpadeo comienza en la pluma hacia abajo y continúa hasta que:

  1. La secuencia de paquetes recibidos se determina que no es un parpadeo o

  2. se produce el pen-up.

Mientras se produce la detección de parpadeo, los paquetes de lápiz se mantienen y no se envían al sistema. Esto debe hacerse porque el envío de paquetes puede interferir con la acción de parpadeo que se realiza. Por ejemplo, el envío de paquetes durante un parpadeo que se asigna a una acción de copia descartaría lo que se seleccionó, lo que significa que no habría nada que copiar en el momento en que se envió la acción.

A medida que los paquetes fluyen al subsistema de entrada del lápiz, la rutina de detección de parpadeos calcula las métricas de longitud, velocidad, tiempo y curvatura del movimiento que se está realizando. Con cada paquete que llega, la rutina de detección actualiza cada una de estas métricas. Tan pronto como cualquiera de las métricas se encuentre fuera de lo que constituiría un parpadeo, finaliza la detección de parpadeo y los paquetes se envían a través.

Dónde se detectan los parpadeos

Los gestos de parpadeo son posibles por el hecho de que las arrastres se realizan normalmente bastante lentamente. El usuario debe dirigirse primero al punto inicial de la arrastrar, realizar la arrastrar y, a continuación, dirigirse al punto final. Normalmente esto tardará demasiado tiempo en calificarse como un parpadeo. Sin embargo, en las superficies de entrada manuscrita los trazos rápidos que se calificarían como parpadeos se producen con frecuencia; cruzar un "t" es un ejemplo común. Por lo tanto, de forma predeterminada, la detección de parpadeos se desactiva sobre las superficies de entrada manuscrita y se activa en todo el sistema.

Problemas de enfoque

Una vez que se ha detectado un parpadeo, comienza una secuencia de eventos que, en última instancia, conduce al sistema a realizar una acción determinada en respuesta al parpadeo que se produjo. En primer lugar, la rutina de detección dentro del subsistema de entrada del lápiz determina a qué ventana se debe enviar el parpadeo. Normalmente, esta es la ventana que tiene el foco, pero hay excepciones. Para los parpadeos de desplazamiento, el parpadeo se envía a la ventana sobre la que se produjo el parpadeo. Tenga en cuenta que esto no es necesariamente la ventana con foco. Cuando se envía un parpadeo a una ventana que no tiene el foco, el foco no cambia a esa ventana.

Acciones de Flick

Una vez determinada la ventana de destino, esa ventana puede controlar el parpadeo en función del comportamiento predeterminado o programado del evento. Las aplicaciones pueden responder a la acción más adecuada en función de la aplicación y la dirección y la posición del parpadeo. Por ejemplo, en una aplicación de asignación, los parpadeos hacia arriba y hacia abajo podrían acercar o alejarse en lugar de desplazarse verticalmente, como se esperaba del comportamiento predeterminado.

Para alertar a una aplicación de que se ha producido un parpadeo, se le envía un mensaje de ventana. Este mensaje de ventana contiene el punto inicial del parpadeo y la dirección del parpadeo. Si la aplicación controla este mensaje de ventana, el subsistema de entrada del lápiz no realiza ninguna otra acción.

Después de detectar un parpadeo, los comentarios visuales que representan la acción de parpadeo se muestran en la pantalla. Estos comentarios sirven para dos propósitos. En primer lugar, confirma al usuario que el parpadeo se realizó correctamente. En segundo lugar, recuerda al usuario qué acción se ha realizado, lo que ayuda al usuario a conectar la dirección de parpadeo con su acción asociada.

Los comentarios de parpadeo constan de dos partes; un icono que representa la acción y una etiqueta que contiene el nombre de la acción. La etiqueta se muestra debajo del icono. Los comentarios se muestran inmediatamente después de detectar el parpadeo. Aunque las aplicaciones pueden personalizar su comportamiento en respuesta a los parpadeos controlando el mensaje de la ventana de parpadeo, la aplicación no puede deshabilitar ni modificar los comentarios de parpadeo.

Se espera que la mayoría de las aplicaciones no sean compatibles con parpadeo y, por tanto, no controlarán el mensaje de ventana descrito anteriormente. Si el mensaje no se controla, el subsistema de entrada del lápiz realizará más acciones. En primer lugar, busca la acción asociada a la dirección del parpadeo detectado. A continuación, realizará los pasos (descritos en la tabla siguiente) para que la ventana de destino realice esta acción. Para muchas de las acciones de parpadeo, esto implica enviar un comando de aplicación, pero ciertas acciones que se implementan no.

Procesar comandos de aplicación

La aplicación debe responder a cualquiera de los comandos de la aplicación que podrían asignarse a un gesto de parpadeo. Si una aplicación no responde al mensaje de WM_TABLET_FLICK, Windows Vista sigue enviando la notificación de WM_APPCOMMAND aplicable, seguida de una notificación de WM_KEYDOWN .

A continuación se muestra una lista de comandos de aplicación que se pueden asignar a parpadeos, con el mensaje de pulsación de tecla de copia de seguridad que se puede enviar.

Get-Help Pulsación de tecla de copia de seguridad
APPCOMMAND_BROWSER_BACKWARD
None
APPCOMMAND_BROWSER_FORWARD
None
APPCOMMAND_COPY
Ctrl+C
APPCOMMAND_PASTE
Ctrl+V
APPCOMMAND_UNDO
Ctrl+Z
APPCOMMAND_DELETE
Supr
APPCOMMAND_CUT
Ctrl+X
APPCOMMAND_OPEN
Ctrl+O
APPCOMMAND_PRINT
Ctrl+P
APPCOMMAND_SAVE
Ctrl+S
APPCOMMAND_REDO
Ctrl+Y
APPCOMMAND_CLOSE

Los comandos de edición, como Copiar, Pegar, Cortar y Eliminar, pueden dirigirse a una selección o al objeto ubicado en la base del gesto de parpadeo. Si no hay ninguna selección, puede usar los datos de la estructura de FLICK_POINT para determinar qué, si existe, el objeto podría haber sido el destino del comando de edición.

Referencia de la API de Flicks

Responder a gestos de parpadeo