restoreFromSnapshot method
Implementation
void restoreFromSnapshot(StateSnapshot snapshot) {
if (snapshot.session.isNotEmpty) {
_session = SessionState.fromJson(snapshot.session);
}
navigation.navigateTo(snapshot.currentView);
if (snapshot.model != null) _activeModel = snapshot.model;
if (snapshot.provider != null) _activeProvider = snapshot.provider;
_permissionMode = PermissionMode.values.firstWhere(
(m) => m.name == snapshot.permissionMode,
orElse: () => PermissionMode.ask,
);
if (snapshot.workingDirectory != null) {
addWorkingDirectory(snapshot.workingDirectory!);
}
for (final entry in snapshot.featureFlags.entries) {
_featureFlags[entry.key] = entry.value as bool;
}
}