rustdesk/flutter
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
..
android fix(android): waiting for image, one cause (#14919) 2026-04-27 22:37:22 +08:00
assets add microsoft oidc logo 2026-04-15 14:39:46 +08:00
ios ios: Enable file sharing and document browser support (#13226) 2025-10-23 15:58:50 +08:00
lib fix(android): close session on dispose to prevent reconnect wedge (#15143) 2026-06-01 10:24:53 +08:00
linux fix(linux): enable mouse side buttons in remote sessions (#14848) 2026-04-25 12:46:05 +08:00
macos feat: Add relative mouse mode (#13928) 2026-01-09 10:03:14 +08:00
test flutter: shift after one shot IME capitalization (#14695) 2026-04-26 22:44:26 +08:00
windows feat: windows, custom client, update (#13687) 2026-02-27 21:50:20 +08:00
.gitattributes for merge 2022-05-12 16:50:30 +08:00
.gitignore Refact. Build flutter web (#7472) 2024-03-22 13:16:37 +08:00
.metadata fix platform 2022-05-23 16:24:56 +08:00
analysis_options.yaml remove menu from desktop home page 2022-09-19 18:38:19 +08:00
build_android.sh Merge remote-tracking branch 'upstream/master' into file-manager-redesign 2023-02-22 23:01:31 +01:00
build_android_deps.sh linux dynamic load libva (#10171) 2024-12-04 17:10:10 +08:00
build_fdroid.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00
build_ios.sh fix some build command 2025-05-11 01:15:29 +08:00
ios_arm64.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00
ios_x64.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00
ndk_arm.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00
ndk_arm64.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00
ndk_x64.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00
ndk_x86.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00
pubspec.lock fix: terminal, web, fonts (#12376) 2025-07-22 23:42:05 +08:00
pubspec.yaml flutter: shift after one shot IME capitalization (#14695) 2026-04-26 22:44:26 +08:00
README.md Punctuation correction (#6808) 2024-01-06 11:11:35 +08:00
run.sh more "cargo build --locked" 2026-05-26 11:45:15 +08:00

flutter_hbb

A new Flutter project.

Getting Started

This project is a starting point for a Flutter application.

A few resources to get you started if this is your first Flutter project:

For help getting started with Flutter development, view the online documentation, which offers tutorials, samples and guidance on mobile development, and a full API reference.