Keyboard events issue on Mac VM

Previous Topic Next Topic
 
classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|

Keyboard events issue on Mac VM

Pavel Krivanek-3
Hi,

The Mac OS virtual machine has wrong processing of keyUp and keyDown
events. It discards event character value.

This events are very rarely used (keyStroke is preferred) so there`s
no surprise that it was not reported before.

See http://code.google.com/p/pharo/issues/detail?id=1995

Cheers,
-- Pavel

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Keyboard events issue on Mac VM

johnmci
You are mistaken in your interpretation of the event codes.
please read http://isqueak.org/ioGetNextEvent

You will find the windows VM will return Windows meta key codes which won't match the values for keyStroke

Tweak in Croquet & Sophie uses  KeyDown/keyUp for Tweak event handling and ignores keyStroke:


On 2010-02-18, at 12:32 PM, Pavel Krivanek wrote:

> Hi,
>
> The Mac OS virtual machine has wrong processing of keyUp and keyDown
> events. It discards event character value.
>
> This events are very rarely used (keyStroke is preferred) so there`s
> no surprise that it was not reported before.
>
> See http://code.google.com/p/pharo/issues/detail?id=1995
>
> Cheers,
> -- Pavel
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project

--
===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Keyboard events issue on Mac VM

Pavel Krivanek-3
If you press the key "a", you`ll get

#(2 2534082 0 1 0 0 0 1)
#(2 2534082 97 0 0 97 0 1)
#(2 2534157 0 2 0 0 0 1)

from the virtual machine. For "A":

#(2 2536225 0 1 1 0 0 1)
#(2 2536225 65 0 1 65 0 1)
#(2 2536413 0 2 8 0 0 1)

The only event with the information about pressed character is
keyStroke (the fourth value is 0) so you will not know the resultant
character because MacRoman charCode and/or utf32Code is missing (they
are present on Linux). It is printed from
InputEventFetcher>>signalEvent:. Am I missing something?

-- Pavel


On Thu, Feb 18, 2010 at 9:46 PM, John M McIntosh
<[hidden email]> wrote:

> You are mistaken in your interpretation of the event codes.
> please read http://isqueak.org/ioGetNextEvent
>
> You will find the windows VM will return Windows meta key codes which won't match the values for keyStroke
>
> Tweak in Croquet & Sophie uses  KeyDown/keyUp for Tweak event handling and ignores keyStroke:
>
>
> On 2010-02-18, at 12:32 PM, Pavel Krivanek wrote:
>
>> Hi,
>>
>> The Mac OS virtual machine has wrong processing of keyUp and keyDown
>> events. It discards event character value.
>>
>> This events are very rarely used (keyStroke is preferred) so there`s
>> no surprise that it was not reported before.
>>
>> See http://code.google.com/p/pharo/issues/detail?id=1995
>>
>> Cheers,
>> -- Pavel
>>
>> _______________________________________________
>> Pharo-project mailing list
>> [hidden email]
>> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>
> --
> ===========================================================================
> John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
> Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
> ===========================================================================
>
>
>
>
>
> _______________________________________________
> Pharo-project mailing list
> [hidden email]
> http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
>

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Keyboard events issue on Mac VM

johnmci

On 2010-02-18, at 1:37 PM, Pavel Krivanek wrote:

> If you press the key "a", you`ll get
>
> #(2 2534082 0 1 0 0 0 1)
> #(2 2534082 97 0 0 97 0 1)
> #(2 2534157 0 2 0 0 0 1)
>
> from the virtual machine. For "A":
>
> #(2 2536225 0 1 1 0 0 1)
> #(2 2536225 65 0 1 65 0 1)
> #(2 2536413 0 2 8 0 0 1)
>
> The only event with the information about pressed character is
> keyStroke (the fourth value is 0) so you will not know the resultant
> character because MacRoman charCode and/or utf32Code is missing (they
> are present on Linux). It is printed from
> InputEventFetcher>>signalEvent:. Am I missing something?
>
> -- Pavel

It works as designed.

> The only event with the information about pressed character is
> keyStroke (the fourth value is 0)


Is zero "ON PURPOSE" because the windows VM is unable to supply what character or unicode is being pressed at that point in time.
The keycode for the 'a' key is zero, the macroman value is 97, and the unicode value is 97.
looks fine

I note the bug is that the key up's modifier should be 1 versus the 8.


===========================================================================
John M. McIntosh <[hidden email]>   Twitter:  squeaker68882
Corporate Smalltalk Consulting Ltd.  http://www.smalltalkconsulting.com
===========================================================================





_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project
Reply | Threaded
Open this post in threaded view
|

Re: Keyboard events issue on Mac VM

Pavel Krivanek-3
On Thu, Feb 18, 2010 at 11:05 PM, John M McIntosh
<[hidden email]> wrote:

>
> On 2010-02-18, at 1:37 PM, Pavel Krivanek wrote:
>
>> If you press the key "a", you`ll get
>>
>> #(2 2534082 0 1 0 0 0 1)
>> #(2 2534082 97 0 0 97 0 1)
>> #(2 2534157 0 2 0 0 0 1)
>>
>> from the virtual machine. For "A":
>>
>> #(2 2536225 0 1 1 0 0 1)
>> #(2 2536225 65 0 1 65 0 1)
>> #(2 2536413 0 2 8 0 0 1)
>>
>> The only event with the information about pressed character is
>> keyStroke (the fourth value is 0) so you will not know the resultant
>> character because MacRoman charCode and/or utf32Code is missing (they
>> are present on Linux). It is printed from
>> InputEventFetcher>>signalEvent:. Am I missing something?
>>
>> -- Pavel
>
> It works as designed.
>
>> The only event with the information about pressed character is
>> keyStroke (the fourth value is 0)
>
>
> Is zero "ON PURPOSE" because the windows VM is unable to supply what character or unicode is being pressed at that point in time.
> The keycode for the 'a' key is zero, the macroman value is 97, and the unicode value is 97.
> looks fine
>
> I note the bug is that the key up's modifier should be 1 versus the 8.

Ok, thank you
-- Pavel

_______________________________________________
Pharo-project mailing list
[hidden email]
http://lists.gforge.inria.fr/cgi-bin/mailman/listinfo/pharo-project