New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[NTGDI][GDI32] Icon fixes for Office 2000, VB6, and Hoyle Cards #5227
Conversation
In the "after" pictures of Word/Excel, there are still buttons -- in the second toolbar (font and stuff) that now don't display anything. Any idea why this is happening? |
It would be of great interest to see whether there are existing api/winetests for those functions, and if not, add one. |
Weirdly in the ticket CORE-12377 I attached the image of those icons working with a previous WIP patch: https://jira.reactos.org/secure/attachment/61882/VirtualBox_ReactOS%20master_09_04_2022_16_29_01.png (why are they failing now?) |
@HBelusca and @julenuri, Thanks for pointing out the missing icons. I have been concentrating on the first six or eight icons on the toolbar and did not even notice these were missing. Let me take a look at this. Well, the answer is somewhat disappointing. @julenuri, I noticed that you were testing on Excel '97 and I was illustrating Excel 2000. I have added screen shots of both Word '97 and Excel '97 before and after and these show all good after this patch. As far as I know, ReactOS has never been able to show all the icons of Office 2000 products. This is something that Maybe Simone and I can look at further. Thanks. |
I have found a possible solution to the missing icons in the toolbars of Word 2000 and Excel 2000 and it is now included. Enjoy. |
CORE-13019 may have some relation too |
@jeditobe, Thank you for your comments. I believe that these two issues are not related. This one is just a position translation problem where we are moving a bitmap from one (X1, Y1) position to another (X2, Y2) location. CORE-13019 that you pointed out is a transparency, ROP, or GDI Blend problem, I believe. I might be able to look into this soon though. Thanks again. |
0f64b1e
to
8b719d6
Compare
Current PR testbot results: MSO_Icons_fix9.patch JID65618 on top of 0.4.15-dev-5931-g8f2c2c1 VBox: https://reactos.org/testman/compare.php?ids=86808,86820 LGTM gdi32:bitmap: 374 fewer failed tests |
Current PR testbot results: VBox: https://reactos.org/testman/compare.php?ids=86941,86943 LGTM gdi32:bitmap: 435 fewer failed tests |
Many thanks for Simone Lombardo for pointing to the code needing attention and providing a working proof-of-concept solution. CORE-12377
Current PR testbot results: VBox: https://reactos.org/testman/compare.php?ids=86993,86995 gdi32:bitmap: 430 fewer failed tests I do not intend to make any further attempts to reduce the regression test failures. |
I belive this shold fix much more bugs/apps than claimed. CORE-15536 GG Internet Communicator: Broken titlebar icon bitmap |
Additional supects to be fixed by this PR |
… SEH2 testing for safe access.
@Doug-Lyons Do you need me to retest |
That one has nothing to do with this PR, sorry. |
@tkreuzer, it has been 3 weeks after your approval with no known unaddressed comments. Is there anything else that I can do to help move this along toward a commit? Thanks. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Final whitespace fixes...
Since I see some "BI_RLE4/8` manipulations, can someone test installation of WinRAR and running some self-compressed executables made with it? |
I have a WinRAR self-extracting archive of QIP Infium beta 1 build 9000, so it could be used to test. |
@HBelusca, I believe that this was fixed in https://jira.reactos.org/browse/CORE-10553. But for testing, there is a WinRAR file using RLE4 there named empty.exe and it shows up fine with these changes. Thanks. |
Looks good to me 👍 |
Thanks, @GeoB99 for the merge, and @JoachimHenze, @HBelusca, and @tkreuzer for your approvals toward getting this merged. |
Many thanks to Simone Lombardo for pointing to the code needing attention and providing a working proof-of-concept solution.
Purpose
Fix toolbar icons in MS Office 2000 and other programs.
JIRA issues:
CORE-12377
CORE-18084
CORE-13889
Proposed changes
Modify SetDIBitsToDevice and NtGdiSetDIBitsToDeviceInternal to correctly handle these icons.
Word 2000 Before:
Word 2000 After:
Excel 2000 Before:
Excel 2000 After:
VB6 Before:
VB6 After:
Hoyle Cards Before:
Hoyle Cards After:
Word '97 Before:
Word '97 After:
Excel '97 Before:
Excel '97 After: