Mac Numeric Keypad KP_Equal not transmitted on Lion?

I am porting a special purpose Android VNC client that works with the popular commercial Sibelius PC and Mac program. I am currently addressing the numeric keypad differences between Mac and Windows keyboards. I am sending 0xffbd (KP_Equal in keysymdef.h) but am not receiving the key event on my Mac Lion system running the 4.0 beta server. I am using on the Mac to display the key clicks.

Appears to be a bug.

In some configurations Vine Server does map to the keypad (separately from the number keys) however their are a host of settings and prefs to deal with typing “alternate characters” on a Mac that could be the source of what you are seeing.

You might get better results by changing these settings…[list]

  • Vine Keyboard settings
  • Vine Event Posting (under advanced)
  • What keyboard are you are using on your server machine?
  • Things differ if the user is off-screen (Fast-user switched). Is this the primary console user?[/list:u]

I am using the current generation Apple wired keyboard that has a numeric keypad. I’ve tried all keyboard setting permutations. Using Hardware Events sourced from Private Event Source is appropriate as my Android application serves as a replacement for the physical numeric keypad, although I have tried the others.

If I understand your question, I believe this is the primary console user. No other concurrent users, just an attempt to use an Android device as a control surface for a Mac application.

Thanks for your interest in this problem.

Just to be certain – it’s a US-101 keyboard and that is what is chosen from System Preferences->Language&Text->Input Sources ?

I’m on Lion, so System Preferences -> Language & Text -> Input Sources lands me on a dialog that has US checked but also has US Extended and US International PC options.

This is the keyboard I have:

How are both Mac and Windows key differences accommodated within the US-101 spec? On Windows keyboards, the key in question is KP_Divide, on the Mac keyboard it is KP_Equal (and KP_Divide is on the right).

Just to be clear KP_Divide, KP_Multiply, etc work fine. Its just KP_Equal that gets lost.

Thanks again.

Also, the other Input Source options don’t have any apparent affect on the problem.

Problem solved. That particular keycode was just missing from the mapping table.

The fix is already checked in at SourceForge if you want to build a new version yourself.

We already have some fixes that we are pulling together for another Beta release of Vine Server so you can also wait a few days until that version comes out.

Great! If it will be days, not weeks, then I can probably wait. Thanks for chasing the problem down!

Has the update been done? The download site is still showing 4.0Beta.