http://bugs.winehq.org/show_bug.cgi?id=22952
Summary: No cursor on black background text box Product: Wine Version: 1.2-rc2 Platform: x86 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: jskartman@gmail.com
Hi,
On babaschess application when you choose a blacktheme, the console cursor on textbox with black backgroud is invisible. The error is a regression and appeares on wine 1.1.28. The bug seems similar to bug #1733, but it is not the same, and it is not corrected on wine 1.2-rc2.
While trying to do regression test, i can not run wine it always throws me this error:
err:module:DelayLoadFailureHook failed to delay load user32.dll.DialogBoxParamW wine: Call from 0x7c19eefa to unimplemented function user32.dll.DialogBoxParamW, aborting
http://bugs.winehq.org/show_bug.cgi?id=22952
Jaime jskartman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |regression URL| |http://www.babaschess.net/d | |ownload/SetupBabasChess_4_0 | |_XP.exe
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #1 from Andrew Nguyen arethusa26@gmail.com 2010-05-30 05:04:17 --- (In reply to comment #0)
While trying to do regression test, i can not run wine it always throws me this error:
err:module:DelayLoadFailureHook failed to delay load user32.dll.DialogBoxParamW wine: Call from 0x7c19eefa to unimplemented function user32.dll.DialogBoxParamW, aborting
Clean your tree when rebuilding.
http://bugs.winehq.org/show_bug.cgi?id=22952
Jaime jskartman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |dylan.ah.smith@gmail.com
--- Comment #2 from Jaime jskartman@gmail.com 2010-05-30 07:40:52 --- Thx for helping.
Ok, here it is the result of regression test:
2da0d8e933b087a3edb87a18e5a44dd4d336603b is the first bad commit commit 2da0d8e933b087a3edb87a18e5a44dd4d336603b Author: Dylan Smith dylan.ah.smith@gmail.com Date: Wed Aug 12 09:06:13 2009 -0400
richedit: Use ME_Cursor instead of offsets for ME_SetCharFormat.
The test that succeeded from this change was as a result of allowing the end of the character format change be specified using NULL as the rest of the text. Before, the end paragraph run at the end of the text was not being set for this case, when all the text was supposed to have its character format changed.
:040000 040000 f5591040dd286aa1a8f2c28ebab675463458e030 2e3556797778c5c85d5dcfda9b92fdba14c0a44c M dlls
Reverting it from the current git doesn't work (2/5 hunk failed). I cc list the autor.
http://bugs.winehq.org/show_bug.cgi?id=22952
Jaime jskartman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Component|-unknown |richedit
http://bugs.winehq.org/show_bug.cgi?id=22952
Jaime jskartman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|No cursor on black |Babaschess, no cursor on |background text box |black background text box
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #3 from Nikolay Sivov bunglehead@gmail.com 2010-05-30 13:43:00 --- Does native richedit help?
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #4 from Jaime jskartman@gmail.com 2010-05-30 13:50:57 --- Yes, it works fine with winetricks riched20.
http://bugs.winehq.org/show_bug.cgi?id=22952
Vitaliy Margolen vitaliy@kievinfo.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Severity|normal |trivial
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #5 from Dylan Smith dylan.ah.smith@gmail.com 2010-05-30 17:00:31 --- I installed and ran Babas Chess in wine-1.2-rc2 and in a windows XP virtual machine, and found the opposite of the problem that you had. In Windows XP the I-Beam cursor was hidden since it was black with no outline, so when the richedit control had a black outline it was hidden unless the cursor was moved near the edge of the control in order to partly see the cursor. In Wine I found the cursor was shown and visible even with a black background since the I-Beam cursor shown was black with a white background.
I tried checking out the commit before the one identified as causing the regression for just the riched20 subdirectory in order to use an old version of Wine's riched20 dll, but didn't notice any difference in the behaviour of the cursor.
I tried the themes named "Default Full Theme - BabasChess Space" and the "Partial Theme - Black backgrounds". I didn't do anything else after starting the application besides moving the mouse and trying to click the richedit control to see if the caret was shown (and the caret was visible with a black background).
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #6 from Nikolay Sivov bunglehead@gmail.com 2010-05-30 17:11:39 --- Hi, Dylan.
Recently I changed caret bitmap creation a bit (commit dcddea361f3cd2717c92757adddb87badc55d3ff). I verified this using a single window app with background filled with grey and black stripes. The goal was to remove dependency of a theme colour, cause windows doesn't depend on it - it just inverts colour. I don't think this change caused a problem but you still could check.
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #7 from Jaime jskartman@gmail.com 2010-05-30 17:17:13 --- Hi Dylan,
The problems affects to the input text box, when you write into it, and with a black theme selected, all other texts are fine.
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #8 from Jaime jskartman@gmail.com 2010-05-30 17:23:34 --- my fault, is not the cursor that is invisible, is the text you write, the cursor is ok.
http://bugs.winehq.org/show_bug.cgi?id=22952
Jaime jskartman@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Summary|Babaschess, no cursor on |Babaschess, invisible text |black background text box |on black background input | |text box
http://bugs.winehq.org/show_bug.cgi?id=22952
Dylan Smith dylan.ah.smith@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW AssignedTo|wine-bugs@winehq.org |dylan.ah.smith@gmail.com Ever Confirmed|0 |1
--- Comment #9 from Dylan Smith dylan.ah.smith@gmail.com 2010-05-30 21:28:11 --- Created an attachment (id=28440) --> (http://bugs.winehq.org/attachment.cgi?id=28440) richedit: Prevent setting format of final end of paragraph
I retested and can confirm the problem, and it was caused by commit 2da0d8e933b087a3edb87a18e5a44dd4d336603b.
I split up the commit until I isolated the change that caused the regression, and the attached patch reverts this change.
This also causes a test failure which was marked todo_wine before the commit that caused the regression. I should to look at how to fix this properly so that reverting this commit doesn't cause another regression.
http://bugs.winehq.org/show_bug.cgi?id=22952
Dylan Smith dylan.ah.smith@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, patch
http://bugs.winehq.org/show_bug.cgi?id=22952
Dylan Smith dylan.ah.smith@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28440|0 |1 is obsolete| |
--- Comment #10 from Dylan Smith dylan.ah.smith@gmail.com 2010-05-31 12:05:33 --- Created an attachment (id=28455) --> (http://bugs.winehq.org/attachment.cgi?id=28455) richedit: Don't set final end of paragraph format on WM_FONT.
It seems as if the regression is from the change in the behaviour of the WM_FONT message rather than EM_SETCHARFORMAT, so the attached patch reverts the change in the behaviour for WM_FONT without affecting the EM_SETCHARFORMAT message. The patch seems to fix the bug and avoids breaking any tests that are currently passing.
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #11 from Dylan Smith dylan.ah.smith@gmail.com 2010-05-31 12:14:17 --- Oops, I mean WM_SETFONT message rather then WM_FONT.
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #12 from Jaime jskartman@gmail.com 2010-06-01 02:55:58 --- Thx Dylan! your patch is working fine!!.
http://bugs.winehq.org/show_bug.cgi?id=22952
Dylan Smith dylan.ah.smith@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #28455|0 |1 is obsolete| |
--- Comment #13 from Dylan Smith dylan.ah.smith@gmail.com 2010-06-06 13:50:50 --- Created an attachment (id=28610) --> (http://bugs.winehq.org/attachment.cgi?id=28610) richedit: Keep default char format on WM_SETFONT in plain text mode.
Babas Chess actually uses plain text mode.
In plain text mode the character format should only be changed by changing the default character format, because otherwise a call to EM_SETCHARFORMAT using SCF_DEFAULT will unsuccessfully change the character format which is what caused the regression bug.
In this case the control was empty, so there was only the end of text run that could have its format change, which my earlier commit allowed.
This seems to be the right way to fix the bug, so I'll submit this patch to wine-patches.
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #14 from Dylan Smith dylan.ah.smith@gmail.com 2010-06-07 10:54:42 --- (From update of attachment 28610) accepted as commit 6072a69d384f27f434c52bc1018ace311b75acfa.
Please test (from git or wait for wine-1.2-rc3) to confirm that this fixes the bug.
http://bugs.winehq.org/show_bug.cgi?id=22952
--- Comment #15 from Jaime jskartman@gmail.com 2010-06-13 05:13:19 --- Working here on 1.2-rc3. thx.
http://bugs.winehq.org/show_bug.cgi?id=22952
Nikolay Sivov bunglehead@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED Resolution| |FIXED
--- Comment #16 from Nikolay Sivov bunglehead@gmail.com 2010-06-13 05:59:27 --- Fixed.
http://bugs.winehq.org/show_bug.cgi?id=22952
Alexandre Julliard julliard@winehq.org changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED
--- Comment #17 from Alexandre Julliard julliard@winehq.org 2010-06-18 12:47:45 --- Closing bugs fixed in 1.2-rc4.