restoreFromSnapshot method

void restoreFromSnapshot(
  1. StateSnapshot snapshot
)

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;
  }
}