public Pomodoro(IUserInterface ui, ISettings settings)
        {
            Duration = settings.PomodoroDuration.ToString();

            Begin = new DelegateCommand(
                canExecute: _ => !_inProgress,
                execute: _ =>
            {
                _inProgress = true;
                Begin.RaiseCanExecuteChanged();

                Progress.Start();
            });

            Progress = new ProgressTimer(ui, settings.PomodoroDuration,
                                         onComplete: () =>
            {
                _inProgress = false;
                Begin.RaiseCanExecuteChanged();

                ui.TransitionToPage <Break>();
            });
        }