reset method

void reset()

Implementation

void reset() {
  _state = TrackerState.tracking;
  _currentSurahWords = repository.getSurahWords(_targetSurah);
  if (_currentMatch == null) {
    final verse = repository.getVerse(_targetSurah, 1);
    _currentMatch =
        verse != null ? VerseMatch(verse: verse, score: 1.0) : null;
  }
  activeAyah.value = _currentMatch?.verse.ayah ?? 1;
  if (_isolateStarted) {
    _setSurahReference(forceClear: true, startGlobalWord: 0);
  }
  _engine.resetBuffer();
  _tokenProcessor.reset();
  _lastProcessedText = '';
  _expectingNewSegment = false;
  _lastResetTime = DateTime.now().millisecondsSinceEpoch;
  onAyahChanged?.call();
  notifyListeners();
}