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.
http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winui/winui...
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.