It is possible to push new RouteSegments onto your route stack while waiting for didMove(...) to execute, while navigating. This causes the new RouteSegment to be pushed on prematurely and results in our route being "out of whack".
An example of this is quickly tapping the "back" button while using the NavigationControllerCoordinator, and quickly tapping the left bar button which, in this example, pushes on another RouteSegment before didMove(...) gets called.
e.g. Route = VC1 -> VC2 -> VC3 -> back, back, tap left bar button
Result: Route = VC1 -> VC2 -> Modal
It is possible to push new
RouteSegment
s onto your route stack while waiting fordidMove(...)
to execute, while navigating. This causes the newRouteSegment
to be pushed on prematurely and results in our route being "out of whack".An example of this is quickly tapping the "back" button while using the
NavigationControllerCoordinator
, and quickly tapping the left bar button which, in this example, pushes on anotherRouteSegment
beforedidMove(...)
gets called. e.g.Route = VC1 -> VC2 -> VC3
-> back, back, tap left bar button Result:Route = VC1 -> VC2 -> Modal
An example of this is highlighted in this project: https://github.com/pbrown719/CorduxRouting