reactos/win32ss/gdi/ntgdi
Joachim Henze 232c45fcd7 [WIN32SS][COMCTL32] Commit Flip_Fix_9.patch
flip_fix_9.patch fixes:
CORE-16984 " 'SPINA Thrulg' / 'SPINA Thyr' / 'Sim Thyr' have images flipped"
CORE-17194 "StretchDIBits test" isn't work correctly"
           "Output of 'Project 3 Test'"
CORE-14701 "DVDStyler 3.0.4 transparent toolbars"
CORE-14701 "DVDStyler 3.0.4 erroneously black around icons of welcome-dlg"
CORE-14671 "'Peazip' shows icons in buttons and menubar vertically flipped"
           "Double Commander shoes icons flipped in buttons, menubar, listview and the treeview"
CORE-13273 "Welcome to Lazarus" icon shows flipped
CORE-13026 "'CudaText app' icon shows flipped"

Not all of those are duplicates, although they appear to be at first glance.
It affects different controls and some of those tickets do have different 'guilty revs' than others.

The patch does consist of 3 parts:

1.) win32ss/gdi/ntgdi/dibobj.c
This one is the most clean part of it, that addresses most of the flipping issues now.

2.) The hack in comctl32.h redefining the version:
We used that in the past to appease some, but not all of the issues listed above.
But it does hide additional issues, e.g. in DvDStyler, therefore we seem to still need that appeasement even today.
Most likely it would make sense to aim to avoid this part in the future.
part 2.) was committed as first appeasement on its own already into
0.4.14-RC-24-g 198b61e
0.4.13-RC-7-g 67211fa
0.4.12-RC-5-g 8449527
0.4.11-RC-16-g b906163
0.4.10-RC-7-g f1e80fe
0.4.9-RC-34-g 9d758ae

3.) toolbar.c change
That part fixes at least the toolbar case for DvDStyler
without relying on the comctl32.h hack any longer,
but it was still not enough to completely get rid of part 2.) yet.

Many thanks to all contributors: 'I_kill_Bugs', Doug Lyons and also 'Julenuri' for testing.

The patch gave nice testbot results:
KVM:  https://reactos.org/testman/compare.php?ids=75704,75714
VBox: https://reactos.org/testman/compare.php?ids=75705,75715

and we also created a summary of manual test-results:
https://jira.reactos.org/browse/CORE-17415?focusedCommentId=126668&page=com.atlassian.jira.plugin.system.issuetabpanels:comment-tabpanel#comment-126668

If you read this comment via git blame and your goal is to get rid of the hack in comctl32.h, I would highly recommend
to redo the tests of that testing table, and if that is asked too much, then please test at least the following cases:
CORE-14701 "DVDStyler 3.0.4 transparent toolbars"
CORE-14701 "DVDStyler 3.0.4 erroneously black around icons of welcome-dlg"
           "DVDStyler 3.0.4 erroneously black/transparent within comboboxes of properties of VMGM menu"
and try to add what might be needed to fix them, and double-check again:
           "DoubleCommander optionsDlg the most complex testcase, contains flip-prone icons in treeview, listview, menubar, buttons, statics". Only some of its flipped icons were impacted by the comctl32.h change before.
2021-01-05 20:30:40 +01:00
..
arc.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
baseobj.hpp Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
bezier.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
bitblt.c [WIN32SS][NTGDI] Unite duplicate of condition 'UsesSource' 2019-10-22 09:33:32 +09:00
bitmaps.c [WIN32SS][GDI] Assume pso->sizlBitmap.cy positiveness (#1743) 2019-07-21 21:39:05 +09:00
bitmaps.h [WIN32SS][NTGDI] Fix UnsafeSetBitmapBits (#1310) 2019-01-27 15:32:52 +09:00
brush.cpp [WIN32K:NTGDI] Avoid breakpoints in syscalls. 2020-01-03 11:21:21 +01:00
brush.h [REACTOS] Cleanup INIT and some PAGE section allocations 2020-11-02 21:45:31 +03:00
brush.hpp Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
cliprgn.c [NtGDI] Use Vis Region for New Clip Region 2020-02-09 11:28:19 -06:00
cliprgn.h [NtGDI] Fix ExtSelectClipRgn Tests 2019-05-09 12:33:21 -05:00
color.h Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
coord.c [WIN32SS][NTGDI] Fix ExtTextOut about TA_UPDATECP (#1546) 2019-05-01 16:51:00 +09:00
coord.h [WIN32SS][NTGDI] Wrap IntLPtoDP and IntDPtoLP macros by do { .... } while (0) 2019-05-04 09:56:09 +09:00
dc.h [REACTOS] Cleanup INIT and some PAGE section allocations 2020-11-02 21:45:31 +03:00
dcattr.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
dclife.c [REACTOS] Cleanup INIT and some PAGE section allocations 2020-11-02 21:45:31 +03:00
dcobjs.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
dcstate.c [WIN32K] Add some validity checks in PDEVOBJ_vReference() and use it instead of explicitly manipulating ppdev->cPdevRefs. 2019-11-25 00:41:51 +01:00
dcutil.c [NtGDI] Add missing type for EPS Print Escape 2020-05-12 20:34:22 -05:00
device.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
dib.h Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
dibobj.c [WIN32SS][COMCTL32] Commit Flip_Fix_9.patch 2021-01-05 20:30:40 +01:00
drawing.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
fillshap.c [NtGDI] Fix ExtSelectClipRgn Tests 2019-05-09 12:33:21 -05:00
font.c [NTGDI] Fix pool memory disclosure in NtGdiGetGlyphOutline (#3021) 2020-08-25 19:14:23 +03:00
font.h [WIN32SS][NTGDI] Registry-based font management (#1816) 2019-08-10 14:52:09 +09:00
freetype.c [NTGDI] Fix stack memory disclosure in ftGdiGetTextMetricsW (#2991) 2020-08-25 19:28:39 +03:00
gdibatch.c [NtGDI] Fix ExtSelectClipRgn Tests 2019-05-09 12:33:21 -05:00
gdidbg.c [REACTOS] Fix misc 64 bit issues (#783) 2019-01-05 10:50:11 +01:00
gdidebug.h Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
gdifloat.h Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
gdikdbgext.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
gdiobj.c [WIN32K] Fix an ASSERT to ignore the upper 32 bits of a passed in GDI handle 2020-11-07 18:34:10 +01:00
gdiobj.h [REACTOS] Cleanup INIT and some PAGE section allocations 2020-11-02 21:45:31 +03:00
gdipool.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
icm.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
init.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
intgdi.h Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
line.c [WIN32K] Fix bounds calculation when drawing with a pen 2020-03-24 14:39:27 +01:00
metafile.c [Win32SS] Support Clipboard Metafile 2019-05-31 21:44:17 -05:00
misc.h [WIN32SS][NTGDI][NTUSER] Make gusLanguageID USHORT (#1776) 2019-07-31 22:24:01 +09:00
paint.h Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
palette.c [REACTOS] Cleanup INIT and some PAGE section allocations 2020-11-02 21:45:31 +03:00
palette.h [REACTOS] Cleanup INIT and some PAGE section allocations 2020-11-02 21:45:31 +03:00
path.c [WIN32K:NTGDI] Add missing probe to NtGdiGetPath. 2020-01-03 11:21:24 +01:00
path.h [WIN32SS][NTGDI] Refactoring PATH_WidenPath (#888) 2018-10-28 05:13:08 +09:00
pen.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
pen.h Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
polyfill.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
print.c [WIN32SS] 2017-11-18 12:15:45 +01:00
rect.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
rect.h [WIN32K] Implement RECTL_bClipRectBySize() and use it in IntEngBitBlt() to clip the target rect against the bounds of the target surface. Also clip the source rect against the source surface. Fixes remaining part of CORE-14463 2018-06-30 16:40:04 +02:00
region.c [WIN32K:NTGDI] Fix ASSERTS in REGION_bXformRgn. CORE-15992 2019-08-07 07:47:47 +02:00
region.h [NtGDI] Update Region code 2019-04-17 14:43:24 -05:00
stockobj.c [WIN32SS][FONT] Fix the system logical stock font data (#709) 2018-08-10 15:37:37 +02:00
text.c [GDI] Demote the insane amount of logging CORE-1091 2020-09-01 19:11:22 +02:00
text.h [WIN32SS][FONT] Fix registry-based management (#1879) 2019-09-10 20:39:52 +09:00
wingl.c Git conversion: Make reactos the root directory, move rosapps, rostests, wallpapers into modules, and delete rossubsys. 2017-10-03 07:45:34 +00:00
xformobj.c [WIN32SS][NTGDI] Strictly check in XFORMOBJ_iSetXform (#1676) 2019-06-24 21:32:40 +09:00
xformobj.h [WIN32SS][NTGDI][GDI32] Fix DPtoLP and NtGdiTransformPoints etc. (#1540) 2019-04-29 14:45:44 +09:00