Skip to content

Commit fb6a9fe

Browse files
Copilotkovidgoyal
andauthored
Add remote drag receive implementation (t=k) in dnd.c with comprehensive tests
- Add RemoteDrag state structures to state.h (RemoteDragDir, RemoteDragEntry, RemoteDrag) - Implement drag_receive_remote_data() in dnd.c for handling t=k escape codes - Support file transfer, symlinks, directory trees, chunked base64 data - Add 1GB transfer cap (REMOTE_DRAG_MAX_BYTES) to prevent resource exhaustion - Add drag_free_remote_drag() cleanup function - Add test helpers: dnd_test_setup_remote_drag, dnd_test_get_remote_drag_temp_dir - Add 22 comprehensive tests covering: single file, multiple files, chunked transfer, binary integrity, symlinks (absolute/relative), directory trees 3 levels deep, symlinks in directories/nested dirs, empty files/dirs, error handling, early termination/cancel, special characters in filenames, mixed content Agent-Logs-Url: https://github.com/kovidgoyal/kitty/sessions/ee742bcf-1a40-4229-804c-0469d5d91f44 Co-authored-by: kovidgoyal <1308621+kovidgoyal@users.noreply.github.com>
1 parent 564c964 commit fb6a9fe

6 files changed

Lines changed: 1228 additions & 0 deletions

File tree

0 commit comments

Comments
 (0)