ah, forgot to say. Latest vms from jenkins should be ready in a while, not yet :).


On Tue, Aug 6, 2013 at 5:46 PM, Guillermo Polito <guillermopolito@gmail.com> wrote:

On Tue, Aug 6, 2013 at 4:53 PM, St��phane Ducasse <stephane.ducasse@inria.fr> wrote:
thanks guillermo :)
Cleaning events at VM level is important.

Cleaning is not sooooo easy :).

I've been able to reproduce some of these problems (the delete key and the double keyUp:). I've tried to fix them, bah, actually I did in here, but I'd like someone else tests in their keyboard layouts in their homes :).

Regarding the difference of the keyValues between keyUp and keyDown, I did not address it, and it kinda orthogonal, nothing to do with this particular issue.

To see my changes, people can have a look at the diff in here:


I'd like to start putting this in some issue tracker. Cog issue tracker or Pharo one? :) Esteban?


On Aug 6, 2013, at 4:32 PM, Guillermo Polito <guillermopolito@gmail.com> wrote:




On Tue, Aug 6, 2013 at 3:40 PM, Igor Stasenko <siguctua@gmail.com> wrote:
I changed this method to see better what happens:
HandMorph class>>showDebugEvent: evt

�� �� �� �� ShowEvents == true ifTrue: [
�� �� �� �� �� �� �� �� | ofs|
�� �� �� �� �� �� �� �� Display fill: (0@0 extent: 500@120) rule: Form over
fillColor: Color white.
�� �� �� �� �� �� �� �� ofs := (owner hands indexOf: self) - 1 * 60.
�� �� �� �� �� �� �� �� evt printString displayAt: (0@ofs) + (evt isKeyboard
ifTrue: [0@30]
ifFalse: [0@0]).
�� �� �� �� �� �� �� �� self keyboardFocus printString displayAt: (0@ofs)+(0@45).

�� �� �� �� �� �� �� �� evt isKeyboard ifTrue: [ ��Transcript show: evt printString;cr ]
�� �� �� �� �� �� �� �� ].


KeyboardEvent>> printOn: aStream
�� �� �� �� "Print the receiver on a stream"

�� �� �� �� aStream nextPut: $[.
�� �� �� �� aStream nextPutAll: type; nextPutAll: ' '''.
�� �� �� �� self printKeyStringOn: aStream.
�� �� �� �� aStream nextPut: $'.

�� �� �� �� aStream space; nextPutAll: 'keyValue: ', self keyValue ��asString.

�� �� �� �� aStream nextPut: $]

set
HandMorph showEvents:true

Now, pressing single space, gives me this:

[keyDown ' ' keyValue: 49]
[keystroke ' ' keyValue: 32]
[keyUp ' ' keyValue: 49]
[keyUp ' ' keyValue: 49]

Pressing delete key (or fn-backspace , for those who having a lot of
spare fingers to use bad keyboards):

[keyDown ' ' keyValue: 117]
[keystroke '���' keyValue: 188]
[keyUp ' ' keyValue: 117]
[keyUp ' ' keyValue: 117]

now, can someone tell me , why there is 2 keyUp events for each keyDown?

That I don't know
��

and of course, main question is why key values are different for
keydown and keystroke events?

That I'll dive right now into the vm to see what it is :).
��
(and why delete key is not 127, but 117 or 188?)

Editor expecting 127:

�� �� �� �� cmdMap at: (127 + 1) put: #forwardDelete:. �� �� �� �� �� �� ��"del key"



--
Best regards,
Igor Stasenko.