http://bugs.winehq.org/show_bug.cgi?id=59075
Bug ID: 59075 Summary: various focus-related winforms tests fail Product: Wine Version: 10.19 Hardware: x86-64 OS: Linux Status: NEW Severity: normal Priority: P2 Component: wineserver Assignee: wine-bugs@list.winehq.org Reporter: madewokherd@gmail.com Distribution: ---
The following tests fail on current Wine: MonoTests.System.Windows.Forms.BeforeSelectEvent:CancelBeforeCreationOfHandle MonoTests.System.Windows.Forms.ComboBoxTest:SelectedTextWithBindingTest MonoTests.System.Windows.Forms.ControlTest:FocusTest MonoTests.System.Windows.Forms.ControlTest:OnValidating_Parent_Close MonoTests.System.Windows.Forms.FocusTest:ActiveControl MonoTests.System.Windows.Forms.FocusTest:ActiveControl2 MonoTests.System.Windows.Forms.FocusTest:ActiveControl_Disabled MonoTests.System.Windows.Forms.FocusTest:ActiveControl_Invisible MonoTests.System.Windows.Forms.FocusTest:ActiveControl_Null MonoTests.System.Windows.Forms.FocusTest:ContainerSelectDirectedBackward MonoTests.System.Windows.Forms.FocusTest:ContainerSelectDirectedForward MonoTests.System.Windows.Forms.FocusTest:ControlSelectNextFlatTest MonoTests.System.Windows.Forms.FocusTest:EnterLeaveFocusEventTest MonoTests.System.Windows.Forms.FocusTest:SelectNextControlNullTest MonoTests.System.Windows.Forms.FocusTest:UserControlFocus MonoTests.System.Windows.Forms.FormTest:ActivateTest MonoTests.System.Windows.Forms.FormTest:ChildFocused MonoTests.System.Windows.Forms.FormTest:GotFocusWithoutCallingOnLoadBase MonoTests.System.Windows.Forms.FormTest:OnActivateEventHandlingTest1 MonoTests.System.Windows.Forms.MdiFormTest:ActiveControlTest MonoTests.System.Windows.Forms.MdiFormTest:SelectPreviousControlTest MonoTests.System.Windows.Forms.TabControlTest:EnterLeaveEvents MonoTests.System.Windows.Forms.TabControlTest:SelectedIndexChangeFiresFocus MonoTests.System.Windows.Forms.TextBoxTest:FocusSelectsAllTest
To test, download https://dl.winehq.org/wine/wine-mono/10.4.0/wine-mono-10.4.0-tests.zip and run "wine run-tests.exe System.Windows.Forms"
f5944829dc8620b48f8ebde59a9ee8a7734a7f8d is the first bad commit commit f5944829dc8620b48f8ebde59a9ee8a7734a7f8d Author: Rémi Bernon rbernon@codeweavers.com Date: Wed Nov 19 15:26:28 2025 +0100
server: Forbid background process window reactivation.
http://bugs.winehq.org/show_bug.cgi?id=59075
Esme Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- URL| |https://dl.winehq.org/wine/ | |wine-mono/10.4.0/wine-mono- | |10.4.0-tests.zip Keywords| |regression, source, | |testcase CC| |madewokherd@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=59075
Esme Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|various focus-related |various focus-related |winforms tests fail |winforms tests fail in | |virtual desktop
--- Comment #1 from Esme Povirk madewokherd@gmail.com --- Whoops, there's an important detail I forgot: this only happens in virtual desktop mode.
http://bugs.winehq.org/show_bug.cgi?id=59075
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
http://bugs.winehq.org/show_bug.cgi?id=59075
Esme Povirk madewokherd@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |rbernon@codeweavers.com Regression SHA1| |f5944829dc8620b48f8ebde59a9 | |ee8a7734a7f8d
http://bugs.winehq.org/show_bug.cgi?id=59075
--- Comment #2 from Rémi Bernon rbernon@codeweavers.com --- It also happens only if you have a Wine console window in the background, for instance when running `wine start /d tests run-tests.exe System.Windows.Forms`.
When I run the tests with the Linux terminal output with `wine tests/run-tests.exe System.Windows.Forms` which only opens the test windows, they don't fail.
Which is kind of expected, as it's probably the console window getting foreground after some test closed all of its windows, and preventing more test windows to get active.
We don't have a very clever foreground process tracking, and we also activate other process ourselves from win32u when the active window is being hidden, with no current way to tell between this and a host / user focus change.
There's a similar regression on macOS where, unlike the Linux usual WM behavior, the host also isn't activating windows automatically when they become visible, and where it needs cooperation from the Wine side.
https://gitlab.winehq.org/wine/wine/-/merge_requests/9668 should fix this I think (and the macOS regression)
http://bugs.winehq.org/show_bug.cgi?id=59075
--- Comment #3 from Esme Povirk madewokherd@gmail.com --- Tested the MR, it does fix this.
http://bugs.winehq.org/show_bug.cgi?id=59075
Rémi Bernon rbernon@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution|--- |FIXED Fixed by SHA1| |c823c3d99679be11f6814888a0f | |86c247f87cdf1
--- Comment #4 from Rémi Bernon rbernon@codeweavers.com --- Fixed with c823c3d99679be11f6814888a0f86c247f87cdf1