No negative impact is know - the calls are not incremental. But it might have caused some flicker.
Source commit: 4833f200de05da107b3486f5b43dd9475a75dc4f
For file list (dirview) use of drag images was disabled already in Bug 1274. Now disabling it for tree view (driveview) too and consequently removing all related support code.
That gets rid of global GlobalDragImageList, which the 64-bit linker has problems with.
https://winscp.net/tracker/1274https://winscp.net/tracker/618
Source commit: 10f13c6de6259711dbd0688402d9a11423fcc8b0
UNICODE define added everywhere (except Putty, which in Ansi code) to make sure A/W suffixes are added consistently across the code
CreateDirectory renamed to avoid problems with being interpreted as CreateDirectoryW in C++ code and CreateDirectory in Pascal code (being also a function in WinAPI)
Source commit: b8d27b5097829c42f853b629e57aebaaab066b9e
Mostly
– explicit static global variables
– const, sign and down casts safety
– same-named variables in nested scopes
– incorrectly identified uninitialized variables
– semicolon after function implementation
– unused variables, fields, arguments and macros
– exact include filename case
– field initialization order
– typename use
– struct vs class declarations
– incorrectly identified uninitialized variables
– refactoring to solve Clang internal compiler error when using new variable in __finally block
Source commit: 3da995ff5169eefcfe3b3b7cc0d019c660096c07
– Control's Canvas does not have Font updated when painting, so it needs to be set explicitly in some places
– Page control drawing was not only incompatible, but broken in general, so it was refactored – giving up on trying to make it 100% mimic system drawing
– CM_DPICHANGED replaced with OnAfterMonitorDpiChanged for form-level scaling. Not really necessary, just for style. Though it is not called for initial resize (at least when starting on primary monitor with temporary non-system DPI)
– OnResize is not called for DPI change, so in some instances, some OnResize call was duplicated in OnAfterMonitorDpiChanged/CM_DPICHANGED
– Scaling of thirdparty box still does not work correctly (but Updates box works??)
– Scaling on primary monitor with temporary non-system DPI is bad
– TTreeView enabled DPI scaling when using Images that is not Scaled
– Discaring obsolete FSiteButtonsPadding workaround
– Controls programmatically added to form are automatically scaled to the form's DPI (relevant for message boxes)
Source commit: a86dddbfada30a5bc409687489bdcd12842050af
Comments:
- .res files seem to be linked automatically, so explicit entries in project files caused duplicates
- JCL updated for compatibility with BCB11 (jcld28win32.inc obtained by running JCJ installer [uninstalled afterwards])
Source commit: ec28d10a0bbb346ed2bb3940aed37e777342e663
On Windows 11 when painting via in-memory bitmap, the top corners of the tabs have dark pixels. Drawing directly corrects that, and as DoubleBuffered is on anyway, it should do not harm.
Source commit: 916c0636202703dbb702b3fe6d6cf523f4bd0879