Merge pull request #5427 from pangeachat/5423-get-lost-progress-popup-when-leaving-no-subscription-vocab-practice

fix: reset bypassExitConfirmation on session-level error
This commit is contained in:
ggurdin 2026-01-26 14:17:39 -05:00 committed by GitHub
commit 33f5c209a4
No known key found for this signature in database
GPG key ID: B5690EEEBB952194

View file

@ -259,7 +259,10 @@ class AnalyticsPracticeState extends State<AnalyticsPractice>
Future<void> _startSession() async {
await _waitForAnalytics();
await _sessionLoader.load();
if (_sessionLoader.isError) return;
if (_sessionLoader.isError) {
AnalyticsPractice.bypassExitConfirmation = true;
return;
}
progressNotifier.value = _sessionLoader.value!.progress;
await _continueSession();
@ -329,6 +332,7 @@ class AnalyticsPracticeState extends State<AnalyticsPractice>
AnalyticsPractice.bypassExitConfirmation = false;
}
} catch (e) {
debugPrint("ERROR");
AnalyticsPractice.bypassExitConfirmation = true;
activityState.value = AsyncState.error(e);
} finally {
@ -355,6 +359,7 @@ class AnalyticsPracticeState extends State<AnalyticsPractice>
activityState.value = AsyncState.loaded(res);
AnalyticsPractice.bypassExitConfirmation = false;
} catch (e) {
debugPrint("ERROR");
AnalyticsPractice.bypassExitConfirmation = true;
if (!mounted) return;
activityState.value = AsyncState.error(e);