One thing I'm not certain of is checking the return value from MapVirtualKey()
See: "static bool IsDeadKey(uint key)" http://social.msdn.microsoft.com/Forums/vstudio/en-US/bc14a7a2-5abd-4c4e-a48d-164469e2407a/tounicodeex-and-dead-keys-inside-system-wide-hooks Checks the return value differently but otherwise seems to be checking for the same case. On Thu, Sep 19, 2013 at 1:04 PM, Harley Acheson <[email protected]> wrote: > Campbell, > > That bug thread goes on for ages and addresses some other issues as well, > which is confusing. Here is a better (short) summary of the problem: > > This bug happens only to Windows users who use a keyboard layout that uses > "dead keys" to create accented characters in European languages. The > keyboard layout in the bug was the "US (International)" keyboard layout > which > does this for tilde, quote, and double-quote characters. > > These layouts, for example, let you press the "tilde" key and then the "e" > to get > an accented "e". Press the dead key twice and you get the actual > character, > like double-quote. Press the dead key and then a character that cannot be > accented, like "L" and you will get the dead key and the "L" > > In Blender, when using this type of keyboard layout, the dead keys are > simply > swallowed up. It is not just that you don't get accented characters, but > that you > have no way of making a quote or double-quote character. This can make > programming in Python a bit difficult... > > > The patch almost completely fixes the issue. > > It allows you to press the dead keys and get the accented character exactly > as > you expect. However you must *always* press the dead key to get that key. > So you must press double-quote twice to get a double-quote. I'm pretty sure > that this is as close as we get to perfect with the way we are dealing with > keyboard > input (raw key presses rather than characters). > > Harley > > > > On Wed, Sep 18, 2013 at 7:35 PM, Campbell Barton <[email protected]>wrote: > >> Going over the tracker and noticed theres an old ms-windows bug with >> dead-keys on international keyboards. >> >> Harley Acheson submitted a fix which apparently works well, but for >> some reason the patch remains uncommitted. >> >> *bug* https://projects.blender.org/tracker/index.php?func=detail&aid=33678 >> *fix* https://projects.blender.org/tracker/index.php?func=detail&aid=33709 >> >> >> While this is an awkward quirk of the API theres a lot of info online >> about this problem and the solution. >> >> Heres the same issue reported and fixed for qt4 for example. >> >> QT4 Had the same bug, their report and fix. >> *bug* https://bugreports.qt-project.org/browse/QTBUG-33409 >> *fix* >> https://qt.gitorious.org/qt/qt/commit/68331c5436506b6f9b4c2a49692a09020e4eef27 >> >> Would an ms-windows developer be able to check on this patch for 2.69 >> release? >> >> -- >> - Campbell >> _______________________________________________ >> Bf-committers mailing list >> [email protected] >> http://lists.blender.org/mailman/listinfo/bf-committers >> > _______________________________________________ > Bf-committers mailing list > [email protected] > http://lists.blender.org/mailman/listinfo/bf-committers -- - Campbell _______________________________________________ Bf-committers mailing list [email protected] http://lists.blender.org/mailman/listinfo/bf-committers
