dispose method
Called when this state object is removed from the tree permanently.
Implementation
@override
void dispose() {
for (final route in _history.reversed) {
route._isCurrent = false;
route.dispose();
}
_history.clear();
final disposeError = NavigatorDisposedException();
for (final completer in _completers) {
if (!completer.isCompleted) {
completer.completeError(disposeError);
}
}
_completers.clear();
FocusManager.instance.dispose();
super.dispose();
}