Commit graph

892 commits

Author SHA1 Message Date
Peter P. Lupo
863aeba1ba Merge remote-tracking branch 'upstream/master' into split-terminal-sync
# Conflicts:
#	src/fmain.pas
2026-06-16 10:34:17 -04:00
Peter P. Lupo
97b0fba384 Fix Qt6 EAccessViolation during thumbnail rendering with terminals 2026-06-16 10:33:21 -04:00
rich2014
8db33ee722 ADD: IKASPathEditMate in KASPathEdit for further refactor 2026-05-31 23:31:23 +08:00
rich2014
c0e020f675 FIX: Compilation error, revert GetFilesInDir() from DCOSUtils into OSUtils 2026-05-31 10:28:45 +08:00
rich2014
5b7cddf5c5 UPD: decouple file functionality from KASPathEdit by TKASPathEditGetFilesFunc, and remove GetFilesInDir() 2026-05-31 08:41:44 +08:00
rich2014
ed931d1894 UPD: copy GetFilesInDir() from KASPathEdit into DCOSUtils to further refactor 2026-05-31 08:41:44 +08:00
Alexander Koblov
0fa82eceb8 UPD: Wfx-plugins - read-only check 2026-05-29 23:27:54 +03:00
EH
3e601a1940
FIX: Virtual terminal - AutoFollow off-by-one and clear resets viewport (#2876) 2026-05-28 20:41:25 +03:00
rich2014
0ec7b7e32b FIX: the issue that TKASCDEdit could not gain focus when clicked 2026-05-28 17:30:15 +08:00
EH
adb32099c9
FIX: SyncDirs — preserve symlink timestamps on Linux (bug #3) (#2888) 2026-05-26 20:45:53 +03:00
Peter P. Lupo
ef80fa3dda Implement terminal-per-tab, history scrolling, and copy/paste functionality
This commit introduces several highly-requested improvements to the integrated terminal:

- Terminal-per-tab synchronization mode: Users can now link a terminal instance to a specific tab, tracking the directory for that tab only.
- Terminal History & Scrolling: Added a 100-line history buffer that allows users to scroll through past terminal output using the scrollbar or mouse wheel.
- Text Selection: Enabled selecting text in the terminal using the left mouse button.
- Copy/Paste Functionality: Implemented copy/paste shortcuts. Copy via Ctrl+Shift+C / Ctrl+Insert. Paste via Ctrl+Shift+V / Shift+Insert, or by using Middle/Right mouse click.
- Fixed 'Follow tail' behavior so the terminal reliably auto-scrolls to the bottom upon receiving new output.
- Fixed overlapping UI elements in the layout configuration dialog.
2026-05-22 16:38:24 -04:00
Peter P. Lupo
f423f3ace5 Fix terminal startup synchronization, directory swapping race condition, and startup blank/uninitialized display
- Added InitialDir property to TCustomPtyDevice and implemented fpChdir in the child process fork to ensure the shell process starts directly and reliably in the correct directory.
- Fixed directory swapping race condition on startup caused by doublecmd changing parent CWD.
- Set InitialDir at startup before setting Connected := True.
- Avoided writing echoed cd commands during startup, eliminating static white text prints.
- Implemented deferred startup prompt triggering by sending a carriage return (#13) via TerminalSyncTimerTimer on the first tick after connection. This guarantees terminal initialization on startup even when unlinked.
2026-05-20 17:39:36 -04:00
Peter P. Lupo
e8ad445cdf ADD: split terminal window layout option and smart terminal-panel synchronization 2026-05-20 15:50:49 -04:00
Alexander Koblov
d03fa06aee FIX: KASButton - incorrect enabled state 2026-05-15 17:40:43 +03:00
Alexander Koblov
151b8faf18 FIX: Viewer - crash under macOS (issue #2815) 2026-05-07 21:28:07 +03:00
Alexander Koblov
b812db501c FIX: KASButton - draw gray icon when button disabled 2026-05-05 21:24:03 +03:00
Alexander Koblov
b171ec1f3a ADD: KASButton - image list support 2026-04-18 14:36:05 +03:00
Alexander Koblov
f9f2487868 ADD: TKASPanel and TKASGroupBox controls 2026-04-11 15:19:00 +03:00
rich2014
1d4f994af8 FIX: the issue where the Caret Height is incorrect when 'Show as Text' in fViewer 2026-04-07 12:46:39 +08:00
Alexander Koblov
f5b45359e0 UPD: Viewer - don't use standalone scrollbar controls (fixes #2646) 2026-03-13 20:58:20 +03:00
axis6404
5f6bfb8b5a
FIX: Emoji comparison in TStringListEx #2762 (#2769) 2026-03-01 13:52:46 +03:00
Alexander Koblov
e608cef4bf FIX: Build under macOS 2026-03-01 00:48:14 +03:00
Alexander Koblov
6199cb56f8 FIX: Can't delete to the trash bin in symlinked directories on different partitions (fixes #2770) 2026-02-28 18:33:34 +03:00
Alexander Koblov
927ed4ad8d FIX: Crash with Lazarus 4.99 (fixes #2764) 2026-02-24 17:54:33 +03:00
Alexander Koblov
3b6d4d1180 FIX: Don't use buggy UTF8CompareStr function 2026-02-23 12:44:32 +03:00
Alexander Koblov
63b7fd155f FIX: Emoji comparison in TStringListEx (fixes #2762) 2026-02-23 12:28:20 +03:00
Alexander Koblov
dd391e22b7 FIX: Crash with Lazarus 4.99 (issue #2764) 2026-02-23 00:09:45 +03:00
Alexander Koblov
2aea141aff FIX: Viewer - wrong selection when text contains a tab character and horizontal scroll is enabled 2026-02-14 16:06:13 +03:00
Alexander Koblov
44c05b6a65 FIX: Lazarus 4.99 compatibility 2026-01-25 12:15:48 +03:00
Alexander Koblov
fcf07a7ebb FIX: Lazarus 4.99 compatibility 2026-01-25 00:50:51 +03:00
Alexander Koblov
039946e768 FIX: Lazarus 4.99 compatibility 2026-01-25 00:39:44 +03:00
Alexander Koblov
53a3a51976 ADD: CreateSymLinkUnix function 2026-01-17 16:32:34 +03:00
Alexander Koblov
9c80e25bb4 FIX: SetFileTime parameters (fixes #2697) 2026-01-13 18:51:59 +03:00
rich2014
20c86c58bf FIX: StretchBitmap() related on retina display 2026-01-07 21:55:30 +08:00
Alexander Koblov
3a6893dc51 FIX: Use normalized strings when compare file names with wildcard under macOS (fixes #2674) 2026-01-05 13:57:30 +03:00
Alexander Koblov
c32db48c03 FIX: EDateOutOfRange exception with negative Unix time (fixes #2666) 2025-12-22 18:46:26 +03:00
Alexander Koblov
8c370fd8ea FIX: Hang when read from a named pipe (fixes #2639) 2025-12-04 19:25:16 +03:00
rich2014
b10bd5609f FIX: the issue of arbitrary truncation in multibyte encoding in IsInPath(), the root cause of #2631 2025-12-03 18:19:11 +08:00
Alexander Koblov
ca615d4c84 FIX: Crash with empty file name (fixes #2631) 2025-12-01 21:39:19 +03:00
Alexander Koblov
f27b7f8526 FIX: Use normalized strings when compare file names under macOS (fixes #1981) 2025-12-01 18:59:57 +03:00
Alexander Koblov
16e9b1d647 FIX: DCDateTimeUtils - arithmetic overflow (fixes #2627) 2025-12-01 17:59:26 +03:00
Alexander Koblov
011609f694 UPD: Argon2 self-test 2025-11-21 23:47:29 +03:00
Alexander Koblov
032168b178 FIX: Argon2 function 2025-11-21 23:15:35 +03:00
Alexander Koblov
9732afd824 UPD: Argon2 preparation 2025-11-19 18:50:45 +03:00
Alexander Koblov
2c83cfb5c4 UPD: Speed-up Argon2 function 2025-11-17 18:36:37 +03:00
Alexander Koblov
a6c06d7866 FIX: Pixelated icons under Windows (issue #2584) 2025-11-04 19:25:45 +03:00
Alexander Koblov
1f0fe20177 FIX: KAScrypt - TDCP_blockcipher128.IncCounter 2025-11-02 13:51:09 +03:00
rich2014
ff6aed5311 UPD: support Retina in KASToolbar (use TImageList as the image source to support Retina) 2025-10-31 13:44:56 +08:00
rich2014
8bbb10317a UPD: support Retina in Drive Button in Disk Panel 2025-10-28 12:16:19 +08:00
Alexander Koblov
863b4e92b9 ADD: DCDateTimeUtils - additional functions 2025-10-25 16:55:54 +03:00