Then when the flowbuilder widget attempts to navigate, is throws an assertion error:
'package:flutter/src/widgets/navigator.dart': Failed assertion: line 3232 pos 14: 'observer.navigator == null': is not true.
Screenshots
Logs
======== Exception caught by widgets library =======================================================
The following assertion was thrown building _ConditionalWillPopScope:
'package:flutter/src/widgets/navigator.dart': Failed assertion: line 3232 pos 14: 'observer.navigator == null': is not true.
Either the assertion indicates an error in the framework itself, or we should provide substantially more information in this error message to help you determine and fix the underlying cause.
In either case, please report this assertion by filing a bug on GitHub:
https://github.com/flutter/flutter/issues/new?template=2_bug.md
The relevant error-causing widget was:
FlowBuilder<SignUpFlowState> FlowBuilder:file:///Users/brapaport/development/udon/frontend/lib/pages/sign_up_flow/sign_up_flow.dart:97:22
When the exception was thrown, this was the stack:
#2 NavigatorState.initState (package:flutter/src/widgets/navigator.dart:3232:14)
#3 StatefulElement._firstBuild (package:flutter/src/widgets/framework.dart:4942:57)
#4 ComponentElement.mount (package:flutter/src/widgets/framework.dart:4781:5)
... Normal element mounting (29 frames)
#33 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11)
... Normal element mounting (29 frames)
#62 _InheritedProviderScopeElement.mount (package:provider/src/inherited_provider.dart:411:11)
... Normal element mounting (7 frames)
#69 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11)
... Normal element mounting (7 frames)
#76 SingleChildWidgetElementMixin.mount (package:nested/nested.dart:222:11)
... Normal element mounting (275 frames)
#351 Element.inflateWidget (package:flutter/src/widgets/framework.dart:3817:16)
#352 MultiChildRenderObjectElement.inflateWidget (package:flutter/src/widgets/framework.dart:6350:36)
#353 Element.updateChild (package:flutter/src/widgets/framework.dart:3551:18)
#354 RenderObjectElement.updateChildren (package:flutter/src/widgets/framework.dart:5883:32)
#355 MultiChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6375:17)
#356 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#357 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
#358 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4977:11)
#359 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
#360 StatefulElement.update (package:flutter/src/widgets/framework.dart:5009:5)
#361 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#362 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
#363 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
#364 ProxyElement.update (package:flutter/src/widgets/framework.dart:5154:5)
#365 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#366 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
#367 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
#368 ProxyElement.update (package:flutter/src/widgets/framework.dart:5154:5)
#369 _InheritedNotifierElement.update (package:flutter/src/widgets/inherited_notifier.dart:108:11)
#370 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#371 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
#372 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#373 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
#374 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4977:11)
#375 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
#376 StatefulElement.update (package:flutter/src/widgets/framework.dart:5009:5)
#377 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#378 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
#379 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#380 SingleChildRenderObjectElement.update (package:flutter/src/widgets/framework.dart:6222:14)
#381 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#382 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
#383 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
#384 ProxyElement.update (package:flutter/src/widgets/framework.dart:5154:5)
#385 Element.updateChild (package:flutter/src/widgets/framework.dart:3530:15)
#386 ComponentElement.performRebuild (package:flutter/src/widgets/framework.dart:4832:16)
#387 StatefulElement.performRebuild (package:flutter/src/widgets/framework.dart:4977:11)
#388 Element.rebuild (package:flutter/src/widgets/framework.dart:4529:5)
#389 BuildOwner.buildScope (package:flutter/src/widgets/framework.dart:2659:19)
#390 WidgetsBinding.drawFrame (package:flutter/src/widgets/binding.dart:891:21)
#391 RendererBinding._handlePersistentFrameCallback (package:flutter/src/rendering/binding.dart:370:5)
#392 SchedulerBinding._invokeFrameCallback (package:flutter/src/scheduler/binding.dart:1146:15)
#393 SchedulerBinding.handleDrawFrame (package:flutter/src/scheduler/binding.dart:1083:9)
#394 SchedulerBinding._handleDrawFrame (package:flutter/src/scheduler/binding.dart:997:5)
#398 _invoke (dart:ui/hooks.dart:151:10)
#399 PlatformDispatcher._drawFrame (dart:ui/platform_dispatcher.dart:308:5)
#400 _drawFrame (dart:ui/hooks.dart:115:31)
(elided 5 frames from class _AssertionError and dart:async)
====================================================================================================
Paste the output of running flutter doctor -v here.
flutter doctor -v
[✓] Flutter (Channel stable, 3.0.2, on macOS 11.6 20G165 darwin-arm, locale en-US)
• Flutter version 3.0.2 at /Users/brapaport/flutter
• Upstream repository https://github.com/flutter/flutter.git
• Framework revision cd41fdd495 (2 weeks ago), 2022-06-08 09:52:13 -0700
• Engine revision f15f824b57
• Dart version 2.17.3
• DevTools version 2.12.2
[✓] Android toolchain - develop for Android devices (Android SDK version 31.0.0)
• Android SDK at /Users/brapaport/Library/Android/sdk
• Platform android-32, build-tools 31.0.0
• Java binary at: /Applications/Android Studio.app/Contents/jre/Contents/Home/bin/java
• Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
• All Android licenses accepted.
[✓] Xcode - develop for iOS and macOS (Xcode 13.2.1)
• Xcode at /Applications/Xcode.app/Contents/Developer
• CocoaPods version 1.11.2
[✓] Chrome - develop for the web
• Chrome at /Applications/Google Chrome.app/Contents/MacOS/Google Chrome
[✓] Android Studio (version 2021.2)
• Android Studio at /Applications/Android Studio.app/Contents
• Flutter plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/9212-flutter
• Dart plugin can be installed from:
🔨 https://plugins.jetbrains.com/plugin/6351-dart
• Java version OpenJDK Runtime Environment (build 11.0.12+0-b1504.28-7817840)
[✓] VS Code (version 1.63.2)
• VS Code at /Applications/Visual Studio Code.app/Contents
• Flutter extension can be installed from:
🔨 https://marketplace.visualstudio.com/items?itemName=Dart-Code.flutter
[✓] Connected device (3 available)
• sdk gphone64 arm64 (mobile) • emulator-5554 • android-arm64 • Android 12 (API 31) (emulator)
• macOS (desktop) • macos • darwin-arm64 • macOS 11.6 20G165 darwin-arm
• Chrome (web) • chrome • web-javascript • Google Chrome 103.0.5060.53
[✓] HTTP Host Availability
• All required HTTP hosts are available
• No issues found!
Describe the bug If my
MaterialApp
has aNavigationObserver
set:And I try to set the same observer in my FlowBuilder widget:
Then when the flowbuilder widget attempts to navigate, is throws an assertion error:
'package:flutter/src/widgets/navigator.dart': Failed assertion: line 3232 pos 14: 'observer.navigator == null': is not true.
Screenshots
Logs
Paste the output of running
flutter doctor -v
here.