Hi,
we have a problem. Our customers in Latvia at corporate environment cannot change Regional Settings and uses custom Keyborad Layout (created with The Microsoft Keyboard Layout Creator). And they cannot enter special Latvian letters using programs with Infragistics controls from WinForms 9.2 version.
Detailed description:
1. http://home.mira.net/~ints/free.html (download link http://home.mira.net/~ints/lv_it_u.zip). This is a link tocustom Keyboard Layout, that our customers use.
2. In Regional and Language Options (Windows XP) Advanced tab "language for non unicode programs" setting value is "English (United States)". In Vista the same problem also can be reprodused.
3. After a WinForm "FormLoad" event and before "FormShown" event UltraToolbarManager does something with fonts / keyborad layout / current thread or I some other object (I do not know exactly) that disables entering special Latvian characters from keyboard.
4. Special latvian characters with this custom keyboard layout is entered like this:
'a == ā
'n == ņ
's == š
so you type aposthrophe, than press according keybord letter and get a needed character.
I am attaching my simple project that I reproduce error with. I also add a screen shot of regional settings card. Red rectangles shows what settings are set. After setting language for non unicode programs you must restart windows.
To reproduce:
1. Install http://home.mira.net/~ints/lv_it_u.zip keyboard layout driver (we tested with WinXP 32 bit and WinVista32 bit).
2. Set English as default language for non unicode programs.
3. Check "Apply all settings to the current user account and to the default user profile" (do not know if this step is necesarry).
4. Restart PC for changes to take effect.
5. Load attached project. After dialog box "001" loads - set windows input language (keyboard layout) to LV (using ALT+SHIFT or mouse).
6. Type 'a 'n 'k 's 'z in ultraTextEditor1. ultraTextEditor shows ā ņ ķ š ž
7. Close form "001".
8. In forms "002" ultraTextEditor1 type 'a 'n 'k 's 'z. ultraTextEditor shows a n k š ž.
So š and ž letters can by typed in, but other letters - cannot.
This bug was first noticed in 9.2 win forms release. 8.3 version did not have this problem.
I tried 9.2.1007, 9.2.2042 hot fixes - bug reproduces in both of them.
Thank you for your time. I hope you can suggest some quick wokraround (besides going back to 8.3 WinToolbarManager).
we hadn't tried it yet, but does 2010.1 includes this bug fix? Where can we find bugfix list, like there is one in service releases archive? :-)
Thank you in advance :-)
This bug was submitted as id TFS26003 and fixed yesterday. It is too late for this fix to make it in to the upcoming SR, so it will be included in the next SR for versions 9.1 and 9.2.
Well, I couldn't find anything weird in PreFilterMessage implementation... So I'm out of ideas... :-(
I don't believe those messages are handled by the UltraToolbarsManager. But you can check the UltraToolbarsManager.FormSubClasser class if you are using rounded forms. You can also check the UltraToolbarsManager's implementation of IMessageFilter.PreFilterMessage. These are the two places where windows messages are handled.
Hello, is there a possibility to find out witch method in UltraToolbarManager consumes windows messages:
WM_INPUTLANGCHANGEREQUEST
WM_INPUTLANGCHANGE
I would try to firue out myself, but there are a lot of event listeners in UltraToolbarManager class...