Basically I have a streambuilder as my “home” in main.dart that returns AuthGate (another stream builder) if there’s a network connection or a separate screen if there’s no connection. This works most of the time but when I use Navigator.of(context).push or showModalBottomSheet, the Navigator leaves the stream builder so I can’t observe network changes until the screen is popped. I can make a variable inside AuthGate that decides which screen to return instead of automatically returning TabBarView but that seems messy and complicated. Is there a “native” way to keep all the navigation inside a stream builder in Flutter?