In pre V5.0 Macintosh VMs

The timestamp field is the millisecond clock value for when the event record is 
created. It has nothing to do 
with when the event occurred. Each of the keydown/stroke/up make a trip to the 
clock so the fact it rolled over
isn't surprising. 

On 2009-12-16, at 7:11 AM, Mariano Martinez Peck wrote:

> [keyDown '<Cmd-v>']    15775001
> [keystroke '<Cmd-v>']    15775002
> [keyUp 'v']    15775002

For V5.0 VMs again the data is time when the event was processed, not when it 
occurred. 
However keydown/stroke use the same clock value,  keyup is *usually* another 
clock time. 

Technically the behaviour between the the versions (3.x/4.x/5.x)  should be the 
same, if you can show it's not, then it's a bug.

In 5.0 we see the keydown and record data, but we don't actually get the 
character until 
text services decides what the unicode value is going to be based on the 
keyboard/language & deadkey
support. 

Some time after the keydown (one or more) Text services calls insertText: on 
our view that then makes us 
generate the keydown, keystroke event using the same millisecond clock value. 

Milliseconds later the key goes up and we generate the key up event using the 
current clock time. 

For control keys (ie arrow, page up, home, etc) 
we directly generate key down/stroke events as per above. Key up is still 
provided. 

But a special case is if you use keyboard services and have a keyboard pallet 
supply the characters
In that case we generate the keydown/stroke/up using the same millisecond value 
for each unicode 
character when insertText: gives us the character string to record. 

For 4.0 it may generate key down/up event for dead keys that you won't see in 
5.0, please supply an
example if anyone feels that is an issue. 

--
===========================================================================
John M. McIntosh <john...@smalltalkconsulting.com>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





_______________________________________________
Pharo-project mailing list
Pharo-project@lists.gforge.inria.fr
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

Reply via email to