http://bugs.winehq.org/show_bug.cgi?id=5402
Anastasius Focht focht@gmx.net changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |focht@gmx.net
--- Comment #32 from Anastasius Focht focht@gmx.net 2010-07-09 17:28:12 --- Hello,
--- quote --- What's the simplest way to create a test case for this behaviour? Creating a not visible overlapped, and then a visible popup windows work same way under Wine as they do under Windows (i.e. GetFocus() and GetActiveWindow() return same active and focus windows). Are there any SetWindowPos, SetParent, ShowWindow that required to replicate the bug? --- quote ---
Well, it's a deviation of the tabstop+focus assignment issue explained in bug 19052 (http://bugs.winehq.org/show_bug.cgi?id=19052#c8)
GetNextDlgTabItem() is still most likely the cause. More (undocumented?) corner cases need to be handled.
The window hierarchy for the case here (using "PhotoStitch 3.1"):
---
(1) top level (main app window)
Title=PhotoStitch Parent=Topmost Style=0x4CF0000 (WS_OVERLAPPED|WS_MINIMIZEBOX|WS_MAXIMIZEBOX|WS_CLIPSIBLINGS|WS_SYSMENU|WS_THICKFRAME|WS_CAPTION) ExtStyle=0x300 (WS_EX_WINDOWEDGE|WS_EX_CLIENTEDGE) Class=Afx:400000:b:2020c:6:30238
(2) dialog control bar
Parent=(1) Style=0x40000040 (DS_SETFONT|WS_CHILD) Class=#32770
(3) OLE drop target window?
Parent=(2) Style=0x50000000 (WS_CHILD|WS_VISIBLE) Class=Afx:400000:b
(4) dialog control bar
Parent=(2) Style=0x40000040 (DS_SETFONT|WS_CHILD) Class=#32770
---
Both dialog control bars (2) and (4) are constructed using CreateDialogIndirectParamA(), WM_INITDIALOG is sent twice (nested creation). After creation of child dialog control bar the active window/input focus is still NULL. Because dialog control bar (4) contains no child control at this point, no tabstop search is performed hence the approach from bug 19052 won't work here (use first child if no suitable control with tabstop property is found).
I returned the dialog control HWND from DIALOG_GetNextTabItem() to have at least a control to set focus on. It helped "PhotoStitch 3.1" from comment #1 and "WYSIWYG Web Builder 5" from comment #18 to successfully start.
I could not find a download for bug 18880 ("unable to run program GAUSS", dupe) to test with. Bug 13542 "Army Builder 3.1" is still a not fixed by both, needs further investigation.
Regards