Hi all!
About 3 years ago, I reported a few incompatiblities in Wine, that caused problems with an application called IQ-FMEA, that our company is developing.
Some things I could fix myself and sent them to wine-patches and they were accepted.
One incompatibility between Windows & Wine is still there and causes problems in our app when operating various dialogs (most important the common file dialog, because this happens frequently).
To demonstrate the problem, I wrote a small app. It may be included into the conformance test library, but it's a little bit tricky, so I'm unsure how to do something like this.
Scenario: Two windows A and B exist. - Window B captures the mouse input. - Window A opens the CommonFileDialog (GetOpenFileName,GetSaveFileName, ChooseFont) - during the open process of the CommonFileDialog the mouse capture is released on Windows (between the 2nd & the 3rd WM_NOTIFY being passed to the OFNHookProc).
The dialog is automatically closed by the hook proc, by posting WM_COMMAND with IDCANCEL.
On Wine the mouse capture is not release, making it impossible to operate the dialog with the mouse.
The same scenario may happen with ChooseFont (and probably more dialog windows).
log output of my test app on Windows XP: Testing GetOpenFileName Wnd with capture:000201fe WM_INITDIALOG:000201fe WM_NOTIFY:000201fe - fffffda7 - (0) WM_NOTIFY:000201fe - fffffda5 - (1) WM_NOTIFY:00000000 - fffffda6 - (2) Quitting dialog Wnd with capture:00000000 Testing ChooseFont Wnd with capture:000201fe WM_INITDIALOG:000201fe WM_CTLCOLORDLG:00000000 - (0) Quitting dialog Wnd with capture:00000000
log output of my test app on Wine 1.1.0 (for OpenSuse 10.3) Testing GetOpenFileName Wnd with capture:0001002a WM_INITDIALOG:0001002a WM_NOTIFY:0001002a - fffffda7 - (0) WM_NOTIFY:0001002a - fffffda5 - (1) WM_NOTIFY:0001002a - fffffda6 - (2) CommonFileDialog - mouse capture should have been released now! Quitting dialog Wnd with capture:0001002a Testing ChooseFont Wnd with capture:0001002a WM_INITDIALOG:0001002a WM_CTLCOLORDLG:0001002a - (0) ChooseFontDialog - mouse capture should have been released now! Quitting dialog Wnd with capture:0001002a
Maybe someone being more familiar with the internal framework can take a look into this problem.
Regards, Andreas