Partial solution to the unimplemented
rob at codeweavers.com
Tue Sep 27 09:10:31 CDT 2005
Tisheng Chen wrote:
>User32.RealChildWindowFromPoint is not implemented
>yet. This causes foobar2000 (with foo_ui_columns) to
>crash, whenever you right-click on a panel.
>This patch is only a partial solution. It just stop
>the crash of programs like foobar2000. But the
>functionality is not quite correct. It just uses
>ChildWindowFromPointEx to find and return a
>childwindow, since I don't really understand the
>difference between them.
It seems that RealChildWindowFromPoint doesn't recurse into deeper
windows, except for HTTRANSPARENT windows, where it recurses deeper than
ChildWindowFromPoint to find a window that doesn't return this hit-test
(except if it is a static control). What a mess for developers...
Two comments on the patch:
1. Please send patches as text attachments. Usually, renaming to .diff
or .txt before attaching is enough to make this happen.
2. "+ FIXME("partial stub. HWND: 0x%lx\n", (DWORD) hwndParent);" ->
don't cast hwndParent to DWORD, just change the format to %p.
Thanks for the patch,
>Hope someone else will implement a better one.
More information about the wine-devel