[Bf-committers] GHOST/Win32 dead-key-fix?

Campbell Barton ideasman42 at gmail.com
Thu Sep 19 05:57:23 CEST 2013

One thing I'm not certain of is checking the return value from MapVirtualKey()

"static bool IsDeadKey(uint key)"


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
<harley.acheson at gmail.com> 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 <ideasman42 at gmail.com>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
>> Bf-committers at blender.org
>> http://lists.blender.org/mailman/listinfo/bf-committers
> _______________________________________________
> Bf-committers mailing list
> Bf-committers at blender.org
> http://lists.blender.org/mailman/listinfo/bf-committers

- Campbell

More information about the Bf-committers mailing list