http://bugs.winehq.org/show_bug.cgi?id=11281
Paul "TBBle" Hampson Paul.Hampson@Pobox.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |Paul.Hampson@Pobox.com Depends on|18044 |
--- Comment #17 from Paul "TBBle" Hampson Paul.Hampson@Pobox.com 2009-04-25 21:09:19 --- This problem has nothing to do with bug 18044. Bug 18044 would only apply if the application was using MS Shell Dlg as the font for the edit box.
The test application in attachment 10369 and attachment 10370 is is sending SJIS text to WM_SETTEXT, which seems to work for me with LC_CTYPE=ja_JP.ut8 wine testwin.exe but not with plain wine testwin.exe.
The definition of WM_SETTEXT takes a TCHAR*, which is ASCII in ASCII builds and UCS-2 in Unicode builds.
To see what's going wrong in the test app, run it with WINEDEBUG=+font and search for GetTextExtentExPointW in the (huge) output. Under en_AU.utf8, I see
trace:font:GetTextExtentExPointW (0x1d8, L"Edit \201a\00a0\201a\00a2\201a\00a4\201a\00a6\201a\00a8", 0)
while under ja_JP.utf8 I see
trace:font:GetTextExtentExPointW (0x1d8, L"Edit \3042\3044\3046\3048\304a", 0)
As you can see, it's getting mangled quite badly before it tries to process it in the font code.
Anyway, getting correct font display for the test app (which uses the System font which pulls glyphs from Tahoma and its FontLinks under Wine) is simply a matter of having the correct FontLinks/SystemLinks entries for Tahoma (see bug 10864 comment 4 for an example, can be done through regedit as a REG_MULTI_SZ) and then the starting text will appear with LC_CTYPE=ja_JP.utf8, and pasting works (at least for me) under both locales.