[Bug 17886] New: Toolbar flicker (TB_HIDEBUTTON always redraws)
http://bugs.winehq.org/show_bug.cgi?id=17886 Summary: Toolbar flicker (TB_HIDEBUTTON always redraws) Product: Wine Version: 1.1.15 Platform: PC URL: http://www.memory-map.co.uk OS/Version: Linux Status: UNCONFIRMED Severity: enhancement Priority: P3 Component: comctl32 AssignedTo: wine-bugs(a)winehq.org ReportedBy: winehq(a)aledhughes.co.uk Created an attachment (id=20190) --> (http://bugs.winehq.org/attachment.cgi?id=20190) Patch to avoid redraw on TB_HIDEBUTTON and state is unchanged A minor annoyance I found when using the Memory-Map OS navigator program is that the main toolbar continuously redraws when moving the mouse around a MDI client. This behaviour is not present when running under Windows, but has been present since pre V1.0 of WINE. A Spy++ message trace shows that the application is sending a TB_HIDEBUTTON message on a mouse move with fShow==TRUE. On WINE this is immediately followed by a redraw (WM_ERASEBKGND, etc.) but under native Windows this redraw isn't being requested. Looking at the WINE code for comctl32.dll it seems that in the TOOLBAR_HideButton function an InvalidateRect() is always been called. I guess that Windows itself optimises this to avoid repainting when a visibility state of the button is already set to that requested with TB_HIDEBUTTON. Doing the same under WINE (patch attached) fixes the flicker. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=17886 Austin English <austinenglish(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |patch --- Comment #1 from Austin English <austinenglish(a)gmail.com> 2009-03-29 14:30:16 --- Can you add a testcase? Please submit patches to wine-patches(a)winehq.org, they aren't picked up here. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=17886 --- Comment #2 from Aled Hughes <winehq(a)aledhughes.co.uk> 2009-03-29 16:24:42 --- Created an attachment (id=20193) --> (http://bugs.winehq.org/attachment.cgi?id=20193) Test program for flickering toolbar Added source for basic win32 app that creates a toolbar and issues a TB_HIDEBUTTON message on WM_MOUSEMOVE. On my system, this makes the toolbar flicker like crazy (may not be so noticeable on newer gfx cards). -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=17886 --- Comment #3 from Nikolay Sivov <bunglehead(a)gmail.com> 2009-04-04 03:45:48 ---
Created an attachment (id=20190) --> (http://bugs.winehq.org/attachment.cgi?id=20190) [details]
I guess that Windows itself optimises this to avoid repainting when a visibility state of the button is already set to that requested with TB_HIDEBUTTON. Doing the same under WINE (patch attached) fixes the flicker.
You're right I think. Checking with ControlSpy in Windows shows that subsequent TB_HIDEBUTTON doesn't produce any drawing messages. (In reply to comment #2)
Created an attachment (id=20193) --> (http://bugs.winehq.org/attachment.cgi?id=20193) [details] Test program for flickering toolbar
Added source for basic win32 app that creates a toolbar and issues a TB_HIDEBUTTON message on WM_MOUSEMOVE. On my system, this makes the toolbar flicker like crazy (may not be so noticeable on newer gfx cards).
We need to add messaging sequence testing in toolbar test suite for that - it's not present yet. Probably I could do it this weekend. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=17886 Nikolay Sivov <bunglehead(a)gmail.com> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |RESOLVED CC| |bunglehead(a)gmail.com Resolution| |FIXED --- Comment #4 from Nikolay Sivov <bunglehead(a)gmail.com> 2009-08-03 11:26:09 --- Fixed by commit: http://source.winehq.org/git/wine.git/?a=commit;h=85abd4c3cfdc21dd614b00bc02... -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
http://bugs.winehq.org/show_bug.cgi?id=17886 Alexandre Julliard <julliard(a)winehq.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|RESOLVED |CLOSED --- Comment #5 from Alexandre Julliard <julliard(a)winehq.org> 2009-08-07 12:42:07 --- Closing bugs fixed in 1.1.27. -- Configure bugmail: http://bugs.winehq.org/userprefs.cgi?tab=email Do not reply to this email, post in Bugzilla using the above URL to reply. ------- You are receiving this mail because: ------- You are watching all bug changes.
participants (1)
-
wine-bugs@winehq.org