An abstraction for an entry managed by a Navigator.

This class defines an abstract interface between the navigator and the "routes" that are pushed on and popped off the navigator. Most routes have visual affordances, which they place in the navigators Overlay using one or more OverlayEntry objects.

Constructors

Route()

Properties

currentResult → T

When this route is popped (see Navigator.pop) if the result isn't specified or if it's null, this value will be used instead.

read-only
focusKey GlobalKey

The key this route will use for its root Focus widget, if any.

read-only
isActive bool

Whether this route is on the navigator.

read-only
isCurrent bool

Whether this route is the top-most route on the navigator.

read-only

The navigator that the route is in, if any.

read-only
overlayEntries List<OverlayEntry>

The overlay entries for this route.

read-only
popped Future<T>

A future that completes when this route is popped off the navigator.

read-only
willHandlePopInternally bool

Whether calling didPop() would return false.

read-only
hashCode int

Get a hash code for this object.

read-only, inherited
runtimeType Type

A representation of the runtime type of the object.

read-only, inherited

Operators

operator ==(other) bool

The equality operator.

inherited

Methods

didChangeNext(Route nextRoute) → void

This route's next route has changed to the given new route. This is called on a route whenever the next route changes for any reason, except for cases when didPopNext() would be called, so long as it is in the history. nextRoute will be null if there's no next route.

didPop(T result) bool

A request was made to pop this route. If the route can handle it internally (e.g. because it has its own stack of internal state) then return false, otherwise return true. Returning false will prevent the default behavior of NavigatorState.pop().

didPopNext(Route nextRoute) → void

The given route, which came after this one, has been popped off the navigator.

didPush() → void

Called after install() when the route is pushed onto the navigator.

didReplace(Route oldRoute) → void

Called after install() when the route replaced another in the navigator.

dispose() → void

The route should remove its overlays and free any other resources.

install(OverlayEntry insertionPoint) → void

Called when the route is inserted into the navigator.

startPopGesture(NavigatorState navigator) NavigationGestureController

If the route's transition can be popped via a user gesture (e.g. the iOS back gesture), this should return a controller object that can be used to control the transition animation's progress. Otherwise, it should return null.

noSuchMethod(Invocation invocation) → dynamic

Invoked when a non-existent method or property is accessed.

inherited
toString() String

Returns a string representation of this object.

inherited