yuanyuanxiang
fc0be64880
Fix(macOS): restore dblclick for MAC touch, fix scroll speed (10px→40px per notch)
2026-06-04 15:33:12 +02:00
yuanyuanxiang
1fd431ba76
Fix(logger): preserve queued logs on shutdown; record exit signal
2026-05-27 08:55:14 +02:00
yuanyuanxiang
ab7a16bec5
Feature: Support building macOS client via "Build-Dialog"
2026-05-10 19:46:48 +02:00
yuanyuanxiang
d46176f4ef
Refactor: extract Linux/macOS client shared code into common
2026-05-10 10:15:14 +02:00
yuanyuanxiang
a354f1ed86
Improve: Embed Modern Terminal DLL in master's resources
...
Fix: keep Linux/macOS client alive across server restarts; gate all commands on auth-verified state to neutralize unauthorized servers
2026-05-09 00:43:55 +02:00
yuanyuanxiang
bc06fd5af5
Feature: Linux/macOS server-identity gate via libsign.a
...
fix remote-cursor flicker on Windows controller
2026-05-08 12:39:59 +02:00
yuanyuanxiang
ef8165c3b4
Feature: sub-connection auth (TOKEN_CONN_AUTH) with HMAC + clientID binding
...
Client first packet on every sub-connection signs (clientID || timestamp ||
nonce) and waits for server ack. Server verifies signature and pins clientID
on the sub-connection ctx, eliminating IP-reverse-lookup unreliability for
NAT/localhost scenarios. Sub-conn coverage: Win 12 sites, Linux/macOS 3-4
each. Main connection keeps existing TOKEN_LOGIN flow unchanged.
Includes:
- Protocol structs sized to 512/256 bytes with reserved space for future
extensions (locale, OS info, session token, etc.)
- 5-min timestamp tolerance (Kerberos-grade replay window)
- 10-sec client wait for cross-pacific / weak-network tolerance
- Fix RemoveFromHostList side-effect ordering: MarkDeviceOffline and
m_ActiveWndW.erase now only fire when ctx is actually removed from
m_HostList, preventing sub-conn disconnects from misreporting main as
offline (regression introduced by auth-set clientID on sub ctx)
- Fix latent bug: IOCPClient::m_conn was never assigned in ctor, leaving
GetConnectionAddress() always NULL and FileManager V2 transfer's
srcClientID always 0
Breaking change: new client cannot use sub-features against old server.
New server tolerates legacy clients (no auth). Future tightening can reject
unauthenticated sub-connections via IsAuthenticated() flag.
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com >
2026-05-07 00:04:40 +02:00
yuanyuanxiang
2c5b5ad628
Improve: client/server - stable client ID via MachineGuid+path (V2)
2026-05-06 21:32:06 +02:00
yuanyuanxiang
6113b4653d
Fix: Resend login info after group change for macOS/Linux clients
2026-05-05 13:35:02 +02:00
yuanyuanxiang
773c78ac0f
Improve master authorization logs and web remote desktop cursor
2026-05-05 12:46:05 +02:00
yuanyuanxiang
92f3df8464
Perf: Optimize macOS screen capture with CGDisplayStream
...
Core optimization:
- Use CGDisplayStream instead of per-frame CGDisplayCreateImage
- Push model: CPU sleeps when screen is static (condition_variable wait)
- IOSurface capture avoids expensive image creation per frame
- ~47% CPU reduction during active remote desktop (45% → 24%)
Additional optimizations:
- vImageVerticalReflect (SIMD) replaces manual row-by-row flip
- Cache CGColorSpaceRef to avoid per-frame creation/release
- Cache tempBuffer to avoid per-frame memory allocation
- Throttle getCursorTypeIndex to 250ms (Accessibility API is expensive)
Bug fixes:
- Fix unreliable screen capture permission check (use actual capture test)
- Improve permission logging
Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com >
2026-05-03 23:36:23 +02:00
yuanyuanxiang
1df2a7b321
feat(macos): Add clipboard support to match Linux implementation
2026-05-03 13:53:58 +02:00
yuanyuanxiang
3d8e90da14
Feature: Add daemon mode (-d) support for macOS
2026-05-03 13:35:30 +02:00
yuanyuanxiang
12e2a33062
Fix: Prevent reconnect crash by clearing callback before destruction
2026-05-03 13:16:02 +02:00
yuanyuanxiang
ca37fa419a
Feat: Implement H264 for Linux client with dynamic libx264 loading
2026-05-03 12:15:22 +02:00
yuanyuanxiang
36423b1c7c
Refactor: Move FileManager to common, add macOS file management support
2026-05-03 10:30:30 +02:00
yuanyuanxiang
a3611d9fc1
Feature: Add terminal support for macOS client with shared PTYHandler
2026-05-03 09:33:47 +02:00
yuanyuanxiang
9ae5529458
Fix: Ensure MFC and Web remote desktop sessions are fully independent
2026-05-02 19:16:30 +02:00
yuanyuanxiang
171fa750e5
Feature: Persist group name to config file and include in login info
2026-05-02 19:14:21 +02:00
yuanyuanxiang
8ed9ba8426
Fix: Wake display on remote desktop start when macOS is locked
2026-05-02 19:14:14 +02:00
yuanyuanxiang
bb6fd7b1b9
Feature: Add user idle and screen lock detection for macOS
2026-05-01 23:20:46 +02:00
yuanyuanxiang
3607f1d768
Feature: Add power management to keep macOS client always responsive
2026-05-01 21:43:55 +02:00
yuanyuanxiang
ed4b9eeb25
Fix: Web remote desktop double-click not working for macOS clients
2026-05-01 11:08:12 +02:00
yuanyuanxiang
cfa9b581fc
Fix: Full Disk Access permission check using actual file read
2026-05-01 09:32:15 +02:00
yuanyuanxiang
979f309497
Feature: Add "Full Disk Access" permission check for macOS client
2026-05-01 08:41:08 +02:00
yuanyuanxiang
9b1cb1ced9
Feature: Add cursor position and type detection for macOS client
2026-05-01 08:32:46 +02:00
yuanyuanxiang
f2a184e760
Feature: Implement initial macOS SimpleRemoter client
2026-05-01 01:28:55 +02:00