Add preliminary support for keyboard layout APIs

Shachar Shemesh wine-devel at shemesh.biz
Sun Nov 9 09:28:02 CST 2003


Dmitry Timoshkov wrote:

>"Shachar Shemesh" <wine-devel at shemesh.biz> wrote:
>
>  
>
>>The idea I had, for which I cannot state whether it's feasible or not, 
>>is to get the mapping from XKB, and prepare a list (group 0 - US, group 
>>1 - IL, group 2 - RU). Then, whenever we get a "next group" or "prev 
>>group", just send out the proper messages. This way, we can also switch 
>>keyboard language at an application's whim (I actually have a small 
>>snippet of code that does that, if your'e interested).
>>    
>>
>
>I'm afraid that will not work, since we need to attach an XKB mapping
>
>  
>
>>Anyhow, your current code (which I have not dived into, yet) should 
>>probably go in. It seems to prepare important infrastructure for 
>>handling keyboard languages by the X11 driver.
>>    
>>
>
>Perhaps I exaggerated a bit a problem for you. After a little of thinking
>I believe you could try:
>
>1. remove all existing israelian keyboard layouts from x11drv/keyboard.c
>2. create a new israelian layout (by simply editing an existing one and
>removing english characters) which will work in Wine after 'setxkbmap il'.
>3. configure your XFree86 to have distinct "us" and "il" layouts.
>
>#3 possibly is a most difficult step. At least I don't know how to do that
>using standard approaches provided by XF86Config.
>
>After that, MappingNotify should really do its work and make Wine to change
>internal keyboard layouts and therefore HKL identifier.
>
>  
>
XFree 4.3 would do about this. setxkbmap il would only give Israeli 
keyboard layout. In order to get the current behaviour, one would have 
to do "setxkbmap us,il". Is that what you mean?

If that is the case, then merely removing the English part of the 
keyboard from the Israeli Wine mapping should identify it as a US 
keyboard followed by an Israeli keyboard. Is that what you mean?

-- 
Shachar Shemesh
Open Source integration consultant
Home page & resume - http://www.shemesh.biz/





More information about the wine-devel mailing list