From ca5784f3f8c94149e572eff62459fc64ad2b5fd3 Mon Sep 17 00:00:00 2001 From: just_stuff_tm <133525672+just-stuff-tm@users.noreply.github.com> Date: Mon, 2 Mar 2026 04:55:47 -0500 Subject: [PATCH] Add post-frame callback to ensure disconnection on dispose when navigation hasn't changed --- lib/screens/scanner_screen.dart | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/lib/screens/scanner_screen.dart b/lib/screens/scanner_screen.dart index 713239f..69ddf6c 100644 --- a/lib/screens/scanner_screen.dart +++ b/lib/screens/scanner_screen.dart @@ -68,6 +68,11 @@ class _ScannerScreenState extends State { void dispose() { _connector.removeListener(_connectionListener); unawaited(_bluetoothStateSubscription.cancel()); + if (!_changedNavigation) { + WidgetsBinding.instance.addPostFrameCallback((_) { + unawaited(_connector.disconnect(manual: true)); + }); + } super.dispose(); }