[v2 PATCH] imm32: Automatically initialize COM on window activation.

Nikolay Sivov nsivov at codeweavers.com
Wed Feb 6 03:10:57 CST 2019

On 2/6/19 11:38 AM, Alexandre Julliard wrote:

> Nikolay Sivov <nsivov at codeweavers.com> writes:
>> diff --git a/dlls/imm32/imm32.spec b/dlls/imm32/imm32.spec
>> index 4197bb81e2..d9cdc794e9 100644
>> --- a/dlls/imm32/imm32.spec
>> +++ b/dlls/imm32/imm32.spec
>> @@ -117,3 +117,4 @@
>>   @ stdcall __wine_get_ui_window(ptr)
>>   @ stdcall __wine_register_window(long)
>>   @ stdcall __wine_unregister_window(long)
>> +@ stdcall __wine_activate_window(long)
> It shouldn't be necessary to add a custom entry point for this, it
> should be part of the normal IME flow. Judging from the message traces,
> it should probably happen by sending WM_IME_SETCONTEXT on focus changes.

The problem is, it will have even larger impact if I start to mess with 
IME message handling which as I remember took some time to stabilize.

Right now I see traces of what I think you're suggesting in winex11 xim 
integration only, that calls
ImmAssociateContext() to send this IME message. However initialization 
should happen
regardless of windowing driver we use, so imm32 has to respond to input 
focus changes.

So to be clear, you're talking about making general improvements in this 
area first?

More information about the wine-devel mailing list