This release is also the first release of the CLI. It uses the same Rust library as the Flutter app.
The Rust rewrite of the core networking and file I/O logic is complete. You should notice that in improved transfer speeds.
Note: The Windows binaries have been updated to include a signature.
Summary
feat(cli): initial CLI release
feat: receive via link
feat: custom color theme via color picker
feat: ipv6 support
feat: checksum support (enabled by default)
feat: automatically accept files by favorite devices by default
feat: use decimal units for file sizes (1 GB = 1000 MB) to match macOS, iOS, Android, and Linux
feat: enable starting text share via command line using --text or -t flags (@guilhermetiscoski)
feat: improve remaining time formatting for long transfers (@ShlomoCode)
feat: change duplicate file naming from "file-1.txt" to "file (1).txt" format (@kartoshka95)
feat(android, ios, macos): respect system-wide animation preferences on first app startup (@nitheesh-daram)
feat(android): run file transfer in background
feat(android): add quick settings tile for instant app launch (@Voltra)
feat(windows): add LocalSend to share sheet (@chenxdust)
feat(macos): implement button to quickly open firewall settings from troubleshoot page (@ShlomoCode)
feat(macos): add Command+Comma shortcut to open settings (@ShlomoCode)
feat(macos): use user-friendly ComputerName instead of the technical hostname (@ShlomoCode)
feat(macos): enable Dock icon text-drop even when the app is not running (@ShlomoCode)
feat(linux): use native window decorations instead of large GTK3 headerbar (@nixigaj)
perf: faster transfers for slow receiving devices
fix: receiving / sending many files no longer freeze / lag
fix: release wake lock after file transfer completes to allow device sleep (@kartoshka95)
fix: text message content displayed three times in history dialog (@ew-sirenko)
fix: text message content size calculation (@ew-sirenko)
fix: save DNG files to image gallery (@ShlomoCode)
fix(ios, android): prevent transfer error by saving unsupported media formats to folder instead of gallery (@ShlomoCode)
fix(android): share to LocalSend sometimes doesn't work
fix(android): preserve location metadata when sharing media (@ShlomoCode)
fix(macos): prevent Dock icon from briefly appearing during autostart when "Start hidden" is enabled (@ShlomoCode)
fix(macos): Dock icon drag-and-drop and Share Extension working again (@ShlomoCode)
fix(linux): add CJK font support for Chinese, Japanese, and Korean text (@Mr-Ebonycat)
Full Changelog
Windows binaries are signed according to the Code signing policy.
Phiên bản 1.17.0
Summary
A small interim release before WebRTC is stable (#2204)
feat: add advanced setting to filter network interfaces (@Tienisto)
feat(mobile): swipe gesture to select multiple media files (@Tienisto)
feat(windows): when pasting an image, automatically convert it to PNG (@BrianMwit)
feat(android): add option to open gallery when image/video was automatically saved (@Tienisto)
fix: path traversal vulnerability when saving files (@Tienisto)
fix: black screen when tapping on "Back" twice in "Share via link" (@Tienisto)
fix(macos): window disappears on command key when minimize to tray is enabled (@Tienisto)
fix(windows): do not poll local IP resulting in unwanted location permissions (@Tienisto)
Windows 7 is no longer supported to keep up with the latest updates from Flutter.
LocalSend now uses Rust as HTTP client (rhttp). This improves performance when the sending device is the bottleneck (e.g. Android to Windows). The receiver is still written in Dart. In the future, we might also rewrite it in Rust to achieve the best performance.
Summary
feat: improve transfer speed if the sending device is the bottleneck by using Rust as HTTP client and multithreading (@Tienisto)
feat: add option to automatically receive files only from favorites (@Davte)
feat: only automatically finish when files are either successfully received or skipped (@Tienisto)
feat: improve various padding and spacing issues in RTL languages (@ShlomoCode)
A small release that primarily fixes an important bug on Android.
For Windows users (same as 1.15.0): To properly support autostart / start hidden, the msix installer has been removed. Please migrate to the EXE installer and uninstall the MSIX version.
Summary
feat: reduce receive history length to 30 items to increase performance (@Tienisto)
feat: show error message when initialization fails for better debugging (@Tienisto)
fix(android): properly close app on back gesture (@Tienisto)
For Windows users (same as 1.15.0): To properly support autostart / start hidden, the msix installer has been removed. Please migrate to the EXE installer and uninstall the MSIX version.
Summary
feat: extract network scanning to separate threads, scanning should not cause UI lags anymore (@Tienisto)
feat(windows): use bigger icon for the installer (@Tienisto)
fix: memory leak when receiving files, properly receive files that exceed available RAM (@Tienisto)
fix(android): save files outside of Download folder (@Tienisto)
fix(windows): use correct portable settings file when started via autostart (@Tienisto)
fix(windows): make installer work on arm64 (@Tienisto)
For Windows users (same as 1.15.0): To properly support autostart / start hidden, the msix installer has been removed. Please migrate to the EXE installer and uninstall the MSIX version.
Summary
feat: support Internet Explorer 8 (IE8) in web share (@Tienisto)
feat: save auto accept state when switching encryption mode in web share (@Tienisto)
feat: switch to "Send" tab when pasting via keyboard shortcut (@Tienisto)
fix: count PIN tries correctly in web share (@Tienisto)
fix(android): crash when picking files or folders on Android TV (@Tienisto)
fix(windows): crash when sum of file sizes is greater than 2 GB (@Tienisto)
fix(windows): bundle required DLL files to avoid crash on app start (@Tienisto)
fix(macos): hide autostart option when installed via App Store because this switch is not working (@Tienisto)
For Windows users: To properly support autostart / start hidden, the msix installer has been removed. Please migrate to the EXE installer and uninstall the MSIX version.
For Android users: There has been some troubles regarding Google Play Store review (#1493). Hopefully, this version gets approved by Google.
Summary
feat: add clear button in the send tab (@Caesarovich)
feat: save text messages to history (@Tienisto)
feat: keep timestamps of transferred files (@Tienisto)
feat: add option to require PIN when sharing via link (@Tienisto)
feat: add option to require PIN when receiving files (@Tienisto)
feat: add option to open parent folder of received files in history (@Tienisto)
feat: confirm before adding or removing favorites in the nearby devices list (@Tienisto)
feat: add URL view when sharing via link that shows the URL in bigger font (@harriseldon)
feat: add discovery timeout setting for advanced users (@o2e)
feat(android): do not require MANAGE_EXTERNAL_STORAGE, implement Android SAF (@Tienisto)
feat(android): do not copy files to cache when select via file picker (@Tienisto)
feat(windows): add context menu integration ("Send to") (@Tienisto)
feat(windows): toggle "start hidden" in-app instead of referring to the system settings (@Tienisto)
feat(desktop): make auto start + start hidden more stable, now listens to --hidden parameter instead of autostart (@Tienisto)
feat(desktop): load initial files from command line arguments (@Tienisto)
feat(desktop): show progress in the taskbar (@NightFeather0615)
feat(macos): handle files that were dropped into the app icon (@Tienisto)
fix: sanitize file names with invalid characters (@Caesarovich)
fix: UI overflow when window height is too small (@CHUNG-HAO)
fix(ios): make documents files visible to the Finder / AppleDevices app (@twinkles-twinstar)
fix(windows): correctly remove tray icon when closing the app (@zpp0196)
fix(windows): don't keep file open (@NightFeather0615)
fix(linux): compatibility with newer libayatana versions (@ix5)
i18n: add Serbian (@nebojsatomic), Finnish (@jooapa), Romanian (@UnifeGi)
Contributions
feat: keep timestamps of transferred files (#1505) @Tienisto
feat: implement Android SAF (#1501) @Tienisto
feat: require pin on receive (#1495) @Tienisto
feat: add option to require PIN when sharing via link (#1479) @Tienisto
feat: add option to open parent folder of received files in history (#1478) @Tienisto
feat: save text messages to history (#1477) @Tienisto
feat(macos): handle files that were dropped into the app icon (#1471) @Tienisto
feat: add context menu integration (#1470) @Tienisto
feat: confirm on favorite tap (#1469) @Tienisto
feat: remove msix, improve auto start (#1467) @Tienisto
[fixed] solved issue Overlapping UI Elements on Windows #1424 (#1444) @CHUNG-HAO
Fix issue 1382: File info dialog overflow (#1390) @Caesarovich
feat: ios app - make documents files visible to the Finder/AppleDevices app (#1377) @twinstar6980
Add filename sanitization (#1336) @Caesarovich
#1274 Make share larger (#1283) @harriseldon
add discovery timeout setting (#1304) @o2e
Rename NixOS to Nixpkgs (#1276) @Caesarovich
Add Button to quickly clear selection (#1266) @Caesarovich
Linux: Use tray_manager instead of system_tray; remove system_tray (#1255) @ix5
fix: Close file stream properly (#1228) @NightFeather0615
feat: Show Progress in Taskbar/Dock (#1222) @NightFeather0615
fix: tray area icon won't disappear (#1208) @zpp0196