"Sylvain Petreolle" spetreolle@yahoo.fr wrote:
Forwarded fom wine-users.
The keyboard detection when starting wine does not detect my turkish keyboard and choses a scandinavion keyboard instead. I had a look at the keyboard.c and there is a turkish keyboard defined. I found in the X11DRV_KEYBOARD_DetectLayout function that the keysym detection loop exited at the first wrong match which resulted in an incorrect match for the keyboard. Attached is a patch that appears (for me) to solve this problem. This problem has been evident since before cvs 2003-12-13. Wine still states that it is unable to find the correct keyboard but it at least loads and uses the correct definition although some keys don't work correctly.
The patch is wrong, since it cures just a symptom not the problem itself. There are two problems with current x11drv keyboard code: 1. Very likely that Turkish keyboard layout there is incorrect. 2. As stated before the keyboard code should be fixed to take into account the real keyboard layout while building the keyc2vkey map, not the hardcoded one.
Regarging Office 97 and Quicken problems: it's better to start with simple +relay trace and search for MessageBox and the first occurence of the wrongly formatted date respectively. Or just find a patch which caused a regression for Office97.
On Sunday 18 January 2004 2:35 pm, Dmitry Timoshkov wrote:
The patch is wrong, since it cures just a symptom not the problem itself.
That could be true as I havent looked too deeply into the code. It was just a quick look at that function only and wasnt followed completely through. (didnt want to step on toes).
There are two problems with current x11drv keyboard code:
- Very likely that Turkish keyboard layout there is incorrect.
AFAICT The Turkish keyboard layout is correct. The original code doesnt get as far as looking at the turkish definition. From what I could determine it stopped searching when it got a wrong keysymb and if that combination satisfied the selection that keyboard was chosen. It didnt matter if it was the right keyboard or not. This was not completely verified through testing as I only have one keyboard :)
- As stated before the keyboard code should be fixed to take into account
the real keyboard layout while building the keyc2vkey map, not the hardcoded one.
That would be a more elegant and portable fix. How do the other programs do it (read window managers)?
Regarging Office 97 and Quicken problems: it's better to start with simple +relay trace and search for MessageBox and the first occurence of the wrongly formatted date respectively. Or just find a patch which caused a regression for Office97.
When I have some time (might be soon when this work is finished and I am out of a job) I will be looking into it.