startSleepTimer method
Calls onElapsed after duration (e.g. pause).
Implementation
void startSleepTimer(Duration duration, VoidCallback onElapsed) {
_sleepTimer?.cancel();
_sleepAt = DateTime.now().add(duration);
_sleepTimer = Timer(duration, () {
_sleepAt = null;
onElapsed();
notifyListeners();
});
notifyListeners();
}