1
0
mirror of https://github.com/winscp/winscp.git synced 2026-10-24 02:28:55 +03:00

129 Commits

Author SHA1 Message Date
Martin Prikryl
e42c1ba59f Fixing assertion and updating comment obsoleted by 777aa221
Source commit: b0ab32a91690074c2c034520c9a93dfc954e4f07
2026-09-12 07:41:05 +02:00
Martin Prikryl
777aa22159 Improving placement of widows, particularly those opened, while the main window is not visible (notably during command-line operations)
Source commit: 307d5b671223917e4a9d7a31aaefd5987c173c1b
2026-09-12 00:36:44 +02:00
Martin Prikryl
4057c84bfa Issue 2360 – Optionally do not show error message when connection is lost while idle
https://winscp.net/tracker/2360

Source commit: f4e51fcf1f07202811e4c5f9d2c5f3e777f71e33
2026-05-29 00:58:33 +02:00
Martin Prikryl
36b9c3c902 Issue 2439 – Informing that when preserving directory timestamps is enabled, using multiple connections for transfer is not possible
https://winscp.net/tracker/2439

Source commit: e035ac9aaa1873ebf834b022b3a8cce8fcea668f
2026-05-13 01:08:14 +02:00
Martin Prikryl
bdc1aefa86 Types and casts safe in respect to pointer size for forward 64-bit compatibility (2nd after a2119a7e)
https://winscp.net/tracker/618

Source commit: c34c42432b77f29fc4e5f6824021c9d282a19525
2026-03-28 01:12:40 +01:00
Martin Prikryl
c3b66b79c7 Unused variable
Source commit: 6ee7054ce95c10b7b226bfe50bcffaad9c0e59cc
2026-02-28 01:12:35 +01:00
Martin Prikryl
4136d3e545 Bug fix: Protocol additional information scrolling was broken
Caused by 3a887624

Implementing handy functions for managing internal components

Source commit: 701335de9b626f7f96daa34a4dc4f2dff10461f9
2026-02-27 01:19:15 +01:00
Martin Prikryl
a2119a7eac Types and casts safe in respect to pointer size for forward 64-bit compatibility
Also GetWindowLongPtr and GWLP_USERDATA

https://winscp.net/tracker/618

Source commit: c85fdf15e50ce8a6f35b1c4d2a0125a0b9c4f1f0
2026-01-22 14:51:13 +01:00
Martin Prikryl
e5efed8955 Refactoring old-style casts
Source commit: 3c37b3a958525c595ad44b081b2e0f3b288b8eb0
2025-12-18 01:20:33 +01:00
Martin Prikryl
c9ac0c1915 Removed obsolete "Preserve remote timestamp" session settings and other XP compatibility code
Source commit: 7cd7f54aae69fd36ea89a8d9ed043fc509bca5e3
2025-12-05 01:33:47 +01:00
Martin Prikryl
9bf5c52653 Issue 2413 – Message box texts and some control labels are not visible to screen readers + Improving order in which Windows Narrator reads window controls
https://winscp.net/tracker/2413

Source commit: 3d48f7f62c1879f32c0fe2df0f023f17f3847949
2025-11-28 11:15:42 +01:00
Martin Prikryl
ea45332b44 Reimplementing operation status centering (b38cf104) using background thread
As the primary thread can stuck during the operation, particularly when copying large file

Source commit: a91f5426d39f3bd9d0f3b859ef2f6f1b78525404
2025-10-02 18:21:25 +02:00
Martin Prikryl
b38cf104cc Windows shell local file copy status window is centered on the main window
Source commit: 91a0daf05a54079315906c22dca82a0cc4d5a77a
2025-09-30 14:52:24 +02:00
Martin Prikryl
632c9173ae Removing obsolete references to PNG
Source commit: 9debc05029a9a1d6c89d9dcced45185b1d8161f0
2025-09-03 16:52:49 +02:00
Martin Prikryl
b13e2e7c2b #pragma package(smart_init) is not useful out of packages
Source commit: 7635ac3b532214f27ea2b6fe6aa80398c857cfcd
2025-08-23 01:06:48 +02:00
Martin Prikryl
3817bbd736 Preparing for separate pre-compiled header file required by Clang
- Once doing that, including more headers to PCH, not just vcl.h
- Clang won't need explicit include, but we will probably keep it anyway.
- #pragma hdrstop has no effect in Clang

Source commit: adc8a268b6907c5337ccaa430cca7526793a3019
2025-08-22 15:43:55 +02:00
Martin Prikryl
ca34927d67 Using modern directory selection dialog that scales correctly (Issue 2373) and allows creating new directory (Issue 2389)
https://winscp.net/tracker/2373
https://winscp.net/tracker/2389

Source commit: 588f914125bc47c206b193ec8410b4babc0dcd6f
2025-07-15 19:35:34 +02:00
Martin Prikryl
9c67f7d339 Bug fix: When the local path specified on Open directory/Location profile dialog is not existing, when browsing for a new path, the trailing part of the nonexisting path was appended to the new path
Additionally, completely dropping the PreserveFileName. Even from Copy dialog, where it might had some use in the past, but now it does seem to be doing anything useful. The Directory includes a trailing backslash, so there's no "filename".

Source commit: ddde0fd680ac03a120e3df88f82767cb5382e44d
2025-07-14 18:05:49 +02:00
Martin Prikryl
74fdf539de Clang imposed changes that should be noop and have no effect on classic compiler (2nd after 92ba1e3f0 + preceding commits)
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
2025-06-24 16:32:34 +02:00
Martin Prikryl
5fd939c221 Missing argument and warning
Source commit: b68c99d1a843f33ef00886e3e51794b6ff08c1e6
2025-05-30 09:39:19 +02:00
Martin Prikryl
75cf13653a UnsupportedDarkThemeWindows counter
Source commit: 027dc5c64608601944c35d34c63398f1c76abd20
2025-05-30 01:23:54 +02:00
Martin Prikryl
b5d20839db Dark theme for Transfer Options dialog (part of Issue 1696)
https://winscp.net/tracker/1696

Source commit: 60e5ebeca3ffaa09da1e98f5d4301b052f1741ce
2025-05-30 01:20:01 +02:00
Martin Prikryl
4d351c5583 Parent form might be temporarily null if the control is part of frame
Source commit: 804159c3f50706394f2e5fe6dd7d5218febb72d3
2025-05-30 01:15:18 +02:00
Martin Prikryl
e608d8ee82 Issue 2358 – Dark theme for Authentication Progress window
https://winscp.net/tracker/2358

Source commit: afdf968e3fab22d5e2d6d28fd04c3e84379a63d0
2025-05-28 01:01:07 +02:00
Martin Prikryl
d3c47a0481 Dark theme for progress window (part of Issue 1696)
https://winscp.net/tracker/1696

Source commit: 47fcfc8dad350a518be9ccfd53ee9d07fb4943b7
2025-05-27 01:09:16 +02:00
Martin Prikryl
6977f1cc67 Using native Windows dark theme for edits, memos, checkboxes and comboboxes
Buttons done in c1ccbe1e

Might also revert the combobox Style changes in TLoginDialog from a90827e6, if they have some negative side effects.
The dark mode now works without the change, if system theme is dark.

Part of Issue 1696.

Source commit: 2ce0e4b4c87878113010a06de4d51e1caf20df86
2025-05-23 22:08:15 +02:00
Martin Prikryl
27a9163e0b TPasswordEdit is not needed as VCL supports ES_PASSWORD style with TEdit
... and did already in XE6.
Getting rid of TPasswordEdit will also make it easier to subclass edits by reducing number of classes in use.

Source commit: 0f32c7a6cdb1bab0c966215770ea923cfdae5c58
2025-05-23 01:18:15 +02:00
Martin Prikryl
907f2ecf4c Dark theme for message boxes (part of Issue 1696)
https://winscp.net/tracker/1696

Source commit: 8922ca214bc7cb6b7f7accf19ec946763681650a
2025-05-08 00:58:16 +02:00
Martin Prikryl
a90827e611 Issue 2345 – Dark theme for Login dialog
https://winscp.net/tracker/2345

Comboboxes with csDropDownList style do not reflect the Color, but do with csOwnerDrawFixed.
csOwnerDrawFixed seems to behave the same, except for the height, which needs to be explicitly set slightly higher
Buttons are still white - they'd have to be custom-drawn (using "Windows10 Dark" custom style)?)
SetParentColor is probably obsoleted by 3a887624

Source commit: 851489ffff36845467f664a8a4a08d0556c1d2eb
2025-05-03 01:07:10 +02:00
Martin Prikryl
c4a4c297d4 Issue 2366 – Monitor placement and maximization is not remembered on monitors with different scaling than the primary one
https://winscp.net/tracker/2366

Source commit: f6fb345a14ed02e76c03f13cc628f2b23c1f2a2b
2025-04-11 18:39:56 +02:00
Martin Prikryl
a09c196616 Removing friend declaration from 07617815 that was probably never needed + Updating comment after function rename in f97dc3d4
Source commit: a4b0eb62f898e42c82475adf97d0ec8f8fa4b6b3
2025-04-11 18:37:59 +02:00
Martin Prikryl
d70637ea00 Bug fix: "Copy key fingerprints to clipboard" command link was scaled incorrectly
Source commit: b286435b157bb40f8523ad2a88b21894428aa1bf
2025-03-27 12:29:45 +01:00
Martin Prikryl
28ffba2df0 Issue 2361 – Layout problems of by-default hidden columns on high-DPI displays
https://winscp.net/tracker/2361

Source commit: 79a9e1d15ab353e30939b9a3f7ce561febcc94bc
2025-03-26 01:24:53 +01:00
Martin Prikryl
398e461ede Canonical link
Source commit: 93427cba82eefbaf691db7a1e89c113af8b86809
2025-03-06 00:56:44 +01:00
Martin Prikryl
3a887624f6 Properly drawing background of selectable value displays on tab controls on Windows 11
(would also help on Windows XP, but we do not support that anymore)

Source commit: 23db1a3f17f5cd240650c5005fa33702ff7d7a2a
2025-03-04 15:09:11 +01:00
Martin Prikryl
9485cb3f7d Switching to Segoe UI font with slightly larger size (9) as recommended for Windows Vista and newer + All windows are now slightly larger accordingly and their layout was unified
Reverts e55f27da
Fixing some anchors and tab order on the way
Dialogs (and controls with specific width or height) are now about 10% wider

Note that main form already used the Segoe UI:9 by explicitly using UseDesktopFont for most/all of its controls

Layout rules
- follow IDE design guidelines in general
- controls start at 8x8, but at 9x9 in group boxes and 22v if group has title
- right and bottom padding in groupbox is the same as left padding
-for checkboxes the bottom padding of the checkmark is the same as left padding = 10
- buttons are 80x25 by default, with +14v with dropdown
- checkboxes/radiobuttons are +2h
- labels are 15 high, textboxes/comboxes 23
- indentation is controls under checkboxes is +16h

Source commit: 09a558e92af838e142d3624cb433cc052782881c
2025-01-16 16:27:20 +01:00
Martin Prikryl
9345fadc52 Removing redundant Windows XP-compatibility code (BCB11 does not support XP)
Source commit: 6442ebecf7dd5c6f45ffa9ef4ea34b82cf7ac95a
2024-11-28 00:55:43 +01:00
Martin Prikryl
f93e07ca05 Removing some workarounds that are no longer needed in BCB11
- Not sure if the "push -vi" workaround was obsoleted by BCB11, but it does not seem to be needed anymore
- TCustomPathLabel.CMStyleChanged workaround was obsoleted by change in TCustomLabel.CMStyleChanged
- status bar scaling is not implemented in TCustomStatusBar.ChangeScale

Source commit: 7de59e2226d9d96aecb0fc78cef01a6bd6fce1d6
2024-11-27 00:56:18 +01:00
Martin Prikryl
936095a230 Undoing change from 5d86eacb that only have effect in Debug build (by mistake), what is dangerous as it might hive some problems during debugging
Source commit: 761469dd02026c6a8cc4d14a474cc103df2b192f
2024-11-21 00:57:54 +01:00
Martin Prikryl
b75c57e786 Improving scaling of thirdparty "browser" control
With Tahoma font it does not work nicely. But the news browser control on Update box works well. It turned out to be due to Segoe UI font.
While it can just be coincidence, we want to move to Segoe UI anyway. So let's do it for About dialog already now.

Source commit: 3e6f173cb37d2e594de5d3bb2fdc2b6eec0e08d5
2024-11-14 00:53:56 +01:00
Martin Prikryl
8b557e8e94 Using BCB11 LockDrawing
Source commit: 36a6efeb7ebe4356e7fe2c3cfc24200e676bca3a
2024-11-13 01:34:01 +01:00
Martin Prikryl
f97dc3d402 Resolving compiler warning by inlining function that is called only once since c42123f5
Source commit: 38375a652737afd2263277f1e3a10ac9d7492bdd
2024-11-08 15:59:18 +01:00
Martin Prikryl
1bd51d52d1 Updating DPI scaling to BCB11
– 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
2024-11-08 10:55:22 +01:00
Martin Prikryl
e40c677e6e Command to find Move candidate on Synchronization checklist window
Source commit: 3afc367ae03df30fa853586a997bfa6fc51ffe53
2024-10-12 01:05:07 +02:00
Martin Prikryl
e55f27dab3 Temporary reverting font to Tahoma:8 (from default BCB 11's Segoe UI:9) to match the windows layout
Source commit: 815a497dffe349865a283f50ec0cd4af92cb3489
2024-10-08 15:54:52 +02:00
Martin Prikryl
e09e95ee43 Upgrade to C++ Builder 11
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
2024-10-08 07:18:18 +02:00
Martin Prikryl
69b6a18593 Search for Preferences options
Source commit: 1dbd33e717c5f59fe9c0ba9cc8b03299cc001697
2024-07-28 01:01:25 +02:00
Martin Prikryl
ecf8d35436 Issue 2305 – Open window maximized when closed while minimized from maximized state
https://winscp.net/tracker/2305

Source commit: b35bb6aad0947c521784208ed8d51c8857bbc771
2024-07-25 00:54:19 +02:00
Martin Prikryl
363f3e3446 Issue 2288 – Tree indentation does not scale correctly
https://winscp.net/tracker/2288

Source commit: 043b0ba3da5deb0eeafb5e2f082680459142f338
2024-05-07 09:20:59 +02:00
Martin Prikryl
e3fe05fcbb Bug 2217: Make it harder to mis-click "never show this again" checkboxes
https://winscp.net/tracker/2217

Source commit: 7157c1f4fe74785f34861fd9f24c4c03042e4588
2023-09-21 01:10:05 +02:00