rustdesk-undercover/flutter/lib
Muad'Dib 152c5c71b1
fix(android): close session on dispose to prevent reconnect wedge (#15143)
RemotePage.dispose() only reaches sessionClose at the tail of gFFI.close(),
behind several awaits (canvas save, image update, the enable_soft_keyboard
platform call). If the app is backgrounded while the page is disposing,
dispose can be suspended before that runs, so the session is never torn down.
The next reconnect re-attaches to the leaked session (mobile reuses a constant
sessionId) and is stuck on "Connecting..." forever while the orphaned io_loop
keeps streaming.

Dispatch sessionClose at the start of dispose so teardown happens synchronously
on route pop, before backgrounding can interrupt it. The sessionClose in
gFFI.close() becomes a no-op once the session is already removed.

Fixes #15060

Co-authored-by: Claude Opus 4.8 (1M context) <noreply@anthropic.com>
2026-06-01 10:24:53 +08:00
..
common Allow macOS monitor switching in privacy mode (#15004) 2026-05-11 12:58:49 +08:00
desktop Drag whole toolbar; snap to all four edges of the remote session window (#15051) 2026-05-24 19:08:45 +08:00
mobile fix(android): close session on dispose to prevent reconnect wedge (#15143) 2026-06-01 10:24:53 +08:00
models Drag whole toolbar; snap to all four edges of the remote session window (#15051) 2026-05-24 19:08:45 +08:00
native fix: web, reset cursor on disconn, back to main page (#9192) 2024-08-27 23:58:04 +08:00
plugin refact: optimize, ID search peers (#10853) 2025-02-20 18:31:12 +08:00
utils feat: Add relative mouse mode (#13928) 2026-01-09 10:03:14 +08:00
web Revert "fix web break introduced in 38f130071 fix(linux): enable mouse side buttons in remote sessions (#14848)" (#14973) 2026-05-06 20:20:17 +08:00
common.dart Terminal utf8 and reconnect (#14895) 2026-05-07 13:27:13 +08:00
consts.dart Drag whole toolbar; snap to all four edges of the remote session window (#15051) 2026-05-24 19:08:45 +08:00
main.dart feat: advanced option, main window, always on top (#12731) 2025-08-26 00:15:55 +08:00