[Mono-winforms-list] RFC on winforms / XIM clientWindow fixage
atsushi at ximian.com
Thu May 8 02:27:13 EDT 2008
After fixing couple of issues, I found a fix for this WaitForHwndMessage()
issue. The situation is that (in some cases?) WM_SHOWWINDOW could be
synchronously inside SendMessage() and when we reach WaitForHwndMessage(),
the MSG is already consumed and hence never shows up.
The attached patch fixes this issue. I'm still not sure why this does not
happen when we don't create XIM context for each client window, but
the sample repro in my last mail[*1] gets fixed with this patch.
If it looks okay, I'll commit this small change. I'm still not going to
my XIM changes, as there are still pending fixes on bugzilla[*2] and there
seems another MDI issue that needs fix too.
*2 #325033 and #387693
Atsushi Eno wrote:
> I'm posting it as I've been stuck with this issue for couple of days and
> I still don't have a fix.
> Now I'm trying to fix XIM stuff to show up IM engine UI. Currently only
> scim works (I tried scim-anthy). Everything else (as far as I tried,
> iiimx/atokx3 and kinput2) do not work.
> It is (to my understanding) due to incorrect use of "client window" of the
> input context (XIC). I fixed this issue with the patch [*1] but
> it caused (or exposed) some regressions [*2][*3].
> My guess is that there are some issues around X event filtering (as
> XplatUIX11.WaitForHwndMessage does not finish) but I don't know how it
> could be fixed.
> I'll continue working on this issue but any help would be appreciated.
> *1 http://monoport.com/9842
> *2 Timer or Form.Close() causes infinite loop http://monoport.com/9804
> ... and it is not always reproducible.
> *3 Form.set_Visible() causes infinite loop http://monoport.com/9806
> Atsushi Eno
> Mono-winforms-list maillist - Mono-winforms-list at lists.ximian.com
-------------- next part --------------
A non-text attachment was scrubbed...
Size: 2660 bytes
Desc: not available
Url : http://lists.ximian.com/pipermail/mono-winforms-list/attachments/20080508/d86afddb/attachment.bin
More information about the Mono-winforms-list