views:

323

answers:

2

i have designed a gaming kiosk app in as3 i am using it on a Sony vaio l pc (like hp's touchsmarts) in windows 7 the app doesn't need any multi-touch gestures (only single touch clicks and drags) so i am using mouse events

everything is fine (including mouse click and move events) except that a single touch to the screen (with no move) doesn't fire a mouse down. it is fired only after a small move of the finger

outside the app, on my desktop, i see that the small windows 7 cursor jumps immediately to where a finger is placed, meaning this issue isn't a hardware or a windows problem but rather how internally the flash app receives "translated" touch-to-mouse events from the os.

for example, in a windows Solitaire game, a simple touch to the screen immediately highlights the touched card. in my app, a button will change to the down state only if i touch it and also move my finger slightly (click events - down and up - are triggered fine)

shouldn't the MOUSE_DOWN event trigger exactly like how a TOUCH_BEGIN would in the new touchevent class?

any ideas?

A: 

Take a look at http://elromdesign.com/blog/Flex/TouchScreen/TouchScreen/Touchscreen.zip

as the author has some classes for working with Touch Interfaces and a good code sample on how to use them.

Todd Moses
Little mistake in the url, the good one would be : http://elromdesign.com/blog/Flex/TouchScreen/Touchscreen.zip
Zed-K
A: 

If the cursor moves when they touch, then I assume the OS is just registering this as a MOUSE_MOVE and not a MOUSE_DOWN. Since it's a touchscreen, you could just consider MOUSE_MOVE a click since the user probably isn't actually dragging their finger around creating a real MOUSE_MOVE event.

Well, if they are actually dragging their finger around for stuff then you could assume a MOUSE_MOVE that suddenly places the cursor on a button (with no prior MOUSE_MOVE i.e. dragging), it's a MOUSE_DOWN.

Matt