http://bugs.winehq.org/show_bug.cgi?id=16183
Summary: Popup text is immediately overwritten by background in IDA Pro Product: Wine Version: 1.1.9 Platform: PC OS/Version: Linux Status: UNCONFIRMED Severity: minor Priority: P2 Component: -unknown AssignedTo: wine-bugs@winehq.org ReportedBy: markk@clara.co.uk
IDA Pro is an interactive disassembler. A freeware version can be downloaded from http://www.hex-rays.com/idapro/idadownfreeware.htm
When viewing a disassembly, if you hover the mouse pointer over a reference to another location, a view of the instructions at that location pops up next to the mouse pointer. You can increase and decrease its height by moving the mouse wheel.
In Wine this does not work properly. The pop-up display is blank (just the background colour). Moving the mouse wheel, you can see the text that should be there, but it is immediately overwritten by the background colour.
To reproduce: download and install IDA Pro freeware version. Run the program and open a Windows executable. Move the pointer over a reference to another location in the program and wait for the pop-up display. Notice it is blank. Move the mouse wheel and (hopefully) see the text being rendered but immediately overwritten.
http://bugs.winehq.org/show_bug.cgi?id=16183
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download
http://bugs.winehq.org/show_bug.cgi?id=16183
Henry Kroll nospam@thenerdshow.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Status|UNCONFIRMED |NEW Ever Confirmed|0 |1
--- Comment #1 from Henry Kroll nospam@thenerdshow.com 2009-02-27 02:07:36 --- *** This bug has been confirmed by popular vote. ***
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #2 from Henry Kroll nospam@thenerdshow.com 2009-03-07 06:41:15 --- Created an attachment (id=19829) --> (http://bugs.winehq.org/attachment.cgi?id=19829) test case
I hacked together a test case. Run 'make' to compile with winegcc or 'make mingw' if you have the mingw wrapper instead.
Unfortunately my popup test works too well; It doesn't have this problem!
I traced winproc and I think I am using all the same API calls. It's just that I think IDA Pro is trying to animate the mouse wheel events with WM_ERASEBKGND. Maybe if I had more time to fiddle with it... Anyway, feel free to tweak and maybe this will give somebody some ideas.
http://bugs.winehq.org/show_bug.cgi?id=16183
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |testcase
http://bugs.winehq.org/show_bug.cgi?id=16183
Henry Kroll nospam@thenerdshow.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Attachment #19829|0 |1 is obsolete| |
--- Comment #3 from Henry Kroll nospam@thenerdshow.com 2009-03-08 16:15:52 --- Created an attachment (id=19841) --> (http://bugs.winehq.org/attachment.cgi?id=19841) improved test case
This improved test case handles the WM_MOUSEWHEEL events and as much of the same API calls, values and flags as I could glean from the debug output of IDA pro. It prints its own source, from disk, into the WS_EX_TOOLWINDOW. I was hoping that loading the popup from disk each time would trigger the bug. It does not.
My version still works perfectly, so either I am making the same mistakes as the wine developers (I am just learning) or IDA Pro has bugs. I'm going to have to fork my project now, while I try to make it fail like IDA does. Feel free to play with the source, which is documented with a couple comments now.
Here is the wine trace I used to compare: make mingw WINEDEBUG="trace+win,trace+user" ./winhover.exe
http://bugs.winehq.org/show_bug.cgi?id=16183
Ben Byer winehq@bbyer.mm.st changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |winehq@bbyer.mm.st
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #4 from Ben Byer winehq@bbyer.mm.st 2009-06-10 13:59:23 --- I talked to the developer of IDA Pro about this (Hex-Rays), and they said that it might be a problem with Borland VCL (the application is compiled with C++ Builder 6.0). The code in the MouseWheel handler is just calling CalcHintRect and ActivateHintData for every mousewheel event, if that helps someone create a test case.
http://bugs.winehq.org/show_bug.cgi?id=16183
Kevin Fitch kfitch42@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |kfitch42@gmail.com
--- Comment #5 from Kevin Fitch kfitch42@gmail.com 2009-11-04 20:05:16 --- The improved test case doesn't work as well for me, but isn't as bad as IDA. I see just the bottom of the characters. I will try to attach a screenshot.
The weirdest part is that when I tapped "Print Screen" to take the screen shot, I immediately saw the correct text, even thought the clipped text ended up in the screen shot.
Ubuntu 8.04 x64, what other details would be interesting/helpful?
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #6 from Kevin Fitch kfitch42@gmail.com 2009-11-04 20:07:20 --- Created an attachment (id=24555) --> (http://bugs.winehq.org/attachment.cgi?id=24555) screenshot showing clipped text
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #7 from Kevin Fitch kfitch42@gmail.com 2009-11-04 20:13:03 --- Oh, yeah wine version 1.0.0-1ubuntu4~hardy1 (from the ubuntu repo).
http://bugs.winehq.org/show_bug.cgi?id=16183
Wolfram Sang wolfram@the-dreams.de changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |wolfram@the-dreams.de
--- Comment #8 from Wolfram Sang wolfram@the-dreams.de 2010-01-24 08:54:33 --- Still present in 1.1.37
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #9 from markk@clara.co.uk 2010-04-17 06:47:39 --- Testing with Wine 1.1.42, this problem is still present but less severe.
The initial pop-up display is still blank, but as you move the mouse wheel down to increase the pop-up size, each increment causes the text to either appear as it should, or the pop-up to be blank. (In other words, the text is not always overwritten any more.)
I'm not sure what determines whether the pop-up at a given size is blank or not, but the first movement of the mouse wheel does seem to consistently cause the text to appear.
http://bugs.winehq.org/show_bug.cgi?id=16183
markk@clara.co.uk changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |markk@clara.co.uk
--- Comment #10 from markk@clara.co.uk 2010-07-08 12:57:19 --- Still present with Wine 1.2rc6. Mostly the same as with Wine 1.1.42, except now you sometimes need to move the mouse wheel two notches for the text to appear.
http://bugs.winehq.org/show_bug.cgi?id=16183
Alexey Loukianov mooroon2@mail.ru changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |mooroon2@mail.ru
--- Comment #11 from Alexey Loukianov mooroon2@mail.ru 2010-07-19 00:26:54 --- Confirming to still happen with wine 1.2. Symptoms are still the same: no tooltip text showed on hover, but sometimes when scrolling mousewheel up/down the text appears as it should.
Attaching screenshots to illustrate the problem.
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #12 from Alexey Loukianov mooroon2@mail.ru 2010-07-19 00:28:40 --- Created an attachment (id=29700) --> (http://bugs.winehq.org/attachment.cgi?id=29700) Tooltip looks like this as it first popups.
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #13 from Alexey Loukianov mooroon2@mail.ru 2010-07-19 00:29:23 --- Created an attachment (id=29701) --> (http://bugs.winehq.org/attachment.cgi?id=29701) If you scroll down the mousewheel several times the text might show as it should.
http://bugs.winehq.org/show_bug.cgi?id=16183
Bence Balint balintbence1337@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |balintbence1337@gmail.com
--- Comment #14 from Bence Balint balintbence1337@gmail.com 2011-01-13 04:28:22 CST --- Still present in 1.3.10.
The scroll down workaround works if the popup size reaches the maximum. So in case of a smaller popup you can maximize the popup window by scrolling down to make the text visible. This might be helpful in tracing the bug.
http://bugs.winehq.org/show_bug.cgi?id=16183
Sergey Alirzaev zl29ah@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |zl29ah@gmail.com
http://bugs.winehq.org/show_bug.cgi?id=16183
Alex Bradbury asb@asbradbury.org changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |asb@asbradbury.org
--- Comment #15 from Alex Bradbury asb@asbradbury.org 2011-05-25 14:06:36 CDT --- Still present in Wine 1.3.20 and with the updated IDA Pro 5.0 freeware version.
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #16 from Mark K markk@clara.co.uk 2011-12-10 07:58:35 CST --- Testing with Wine 1.3.34 and IDA Pro 5.0 freeware, this issue is worse than before (comments 9 and 10); it's back to how it was in the original description. As you move the mouse wheel to enlarge the popup area, text is momentarily visible but is always erased.
http://bugs.winehq.org/show_bug.cgi?id=16183
Bruno Jesus 00cpxxx@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |00cpxxx@gmail.com
--- Comment #17 from Bruno Jesus 00cpxxx@gmail.com 2012-04-04 22:19:15 CDT --- Still present in 1.5.1.
http://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #18 from Mark K markk@clara.co.uk 2012-11-26 13:33:49 CST --- Starting with Wine 1.5.13 the problem is less severe. Popups initially appear blank about half the time. But in all cases, changing the popup height by moving the mouse wheel causes the text to appear correctly.
In the hope it might help someone figure out a full fix, I ran regression tests to see which commits caused the improvement. The first one is:
commit d596b62d95f20d59e13e76aaac5e9652e4dda8cc Author: Alexandre Julliard julliard@winehq.org Date: Thu Aug 30 16:18:46 2012 +0200
winex11: Only create the client window when the pixel format is changed.
:040000 040000 69edbb69c4cfea169e1ad5cff60dd9137e4be62b b38e46d082a13734fd014b8c9651e4a0ffab1e12 M dlls
With that commit, on increasing the popup height, background colour still always overwrites the text. However, on *decreasing* the popup height, the text always shows.
The second commit is:
commit 2eebedf38e4d5fd49075f8f89e63f869ca85cceb Author: Alexandre Julliard julliard@winehq.org Date: Mon Apr 30 15:09:03 2012 +0200
winex11: Handle Expose events by refreshing from the window surface.
:040000 040000 33fb0e5963c1326f8765334e4714060c89b21b5e bfc8d1241b83054cc465e92d3f532664ffe55bd8 M dlls
With both those commits we get the current state of this bug, where the popup initially shows blank some of the time, but changing its height always causes the text to show.
https://bugs.winehq.org/show_bug.cgi?id=16183
Ruslan Kabatsayev b7.10110111@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |b7.10110111@gmail.com
https://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #19 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in 1.7.33.
https://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #20 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in wine-2.0-235-g2dd0fb8, in the state described in comment 18.
https://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #21 from Bruno Jesus 00cpxxx@gmail.com --- I believe this bug is fixed in wine-git. It was pretty easy to reproduce this bug before but now all tooltips are working fine for me. Can any other affected user test?
https://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #22 from Ruslan Kabatsayev b7.10110111@gmail.com --- (In reply to Bruno Jesus from comment #21)
I believe this bug is fixed in wine-git. It was pretty easy to reproduce this bug before but now all tooltips are working fine for me. Can any other affected user test?
It's not fixed: still in the state described by comment 18 as of wine-2.7.
https://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #23 from Bruno Jesus 00cpxxx@gmail.com --- (In reply to Ruslan Kabatsayev from comment #22)
It's not fixed: still in the state described by comment 18 as of wine-2.7.
Thanks, I guess I'm just lucky then. I checked in wine 1.6.2 and the bug is still there but 2.7 works fine.
https://bugs.winehq.org/show_bug.cgi?id=16183
--- Comment #24 from Ruslan Kabatsayev b7.10110111@gmail.com --- Still present in wine-2.15-74-g083e61f, in the state described in comment 18.
https://bugs.winehq.org/show_bug.cgi?id=16183
François Gouget fgouget@codeweavers.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |source CC| |fgouget@codeweavers.com