On Aug 19 15:14, Samuel Thibault wrote: > Corinna Vinschen, le Fri 19 Aug 2011 13:50:19 +0200, a écrit : > > > .wVirtualKeyCode = 0x630, > > Eergl, no, that should have been 0x30 here, our code does properly masks > out the high part, I just missed that in our code.
And what about the control code? It's a fixed 1 in your example, but obviously it should be 6. > > a simple testcase (wow!) > > Sorry, but I'm not paid for this, I don't actually use the software at > all (neither brltty nor windows), don't actually own the hardware (thus > had to emulate it in qemu by first reverse-engineering the actual device > behavior), Same here. I tested this on a Qemu/KVM driven W7 box. > it just seems I'm the only guy in the world that knows a bit > about both brltty and windows and knows that some people *need* it, and > I thus spend time on it, and it was already almost 5am... > > > /* Create correct CtrlKeyState from high byte returned by VkKeyScanW. */ > > if (vks & 0x100) > > ctrl |= SHIFT_PRESSED; > > if (vks & 0x200) > > ctrl |= RIGHT_CTRL_PRESSED; > > if (vks & 0x400) > > ctrl |= RIGHT_ALT_PRESSED; > > Err, do you mean LEFT_ALT_PRESSED here? Right alt is altgr in some > keyboard layouts, which is precisely what people use to type '@' in > the french layout, actually. E.g. LeftAlt-A and RightAlt-A (i.e. I'm aware of this difference, so, no, that was a deliberate RIGHT_ALT_PRESSED. However, this also works for me when using LEFT_CTRL_PRESSED and LEFT_ALT_PRESSED in the conditionals above. Corinna -- Corinna Vinschen Please, send mails regarding Cygwin to Cygwin Project Co-Leader cygwin AT cygwin DOT com Red Hat -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple