You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Direct Button Sharing: Users can now select and send files directly via the Send File button in the Windows GUI or the Android app.
Unified Channel Routing: Transfers are streamed in encrypted 64KB chunks over the active connection pathway (Local WebSocket, STUN/UDP, or Firebase Fallback).
Smart Connection Auto-Routing
mDNS Scan Prioritization: When initiating a connection to a device listed under "Cloud Relay" (manually or via Auto-Connect), the Android app now runs a quick 2.5-second local mDNS scan first. If the PC is found on the same network, it automatically routes the connection over the local WebSocket (Stage 1), prioritizing speed and zero-cost local traffic.
VPN & Network Resiliency
Winsock Address Family Fix: Fixed IPv6/IPv4 lookup failures on Windows hosts behind VPN interfaces. The agent now strictly resolves STUN hostnames to IPv4 endpoints.
Half-Open Socket Detection: Configured Server-Sent Events listeners on the Windows agent with a (10, 45) second connect/read timeout threshold, forcing automatic socket reconnection when switching network interfaces or toggling VPNs.
Bug Fixes & Stability Upgrades
Android Application
Fixed 100% Notification Hang: Resolved a bug where the file-receive notification progress bar would get stuck at "100% ongoing" if the notification drawer was open. Progress updates are now throttled to only fire when the percentage integer changes, and the redundant 100% progress call is skipped to allow the completion notification to cleanly take over.
Mismatched Clock Drift Tolerance: Extended the Firebase PC activity threshold from 2 minutes to 10 minutes, preventing online PCs with minor clock drifts from disappearing from the device discovery list.
Fixed Connection Overlaps (EADDRINUSE): Implemented proper coroutine job cancellation (connectJob.cancel()) on subsequent connect requests or disconnections. This prevents concurrent connection loops from running in the background and colliding on socket port bindings.
Windows Agent
Socket Port Reuse: Enforced SO_REUSEADDR bindings on the UDP client socket to eliminate address family collisions and BindException issues when cycling connections.
Single Instance Lock: Improved single-instance socket locks to prevent double agent instances from running on the host.