switch (oldState)
{
case WorkoutState.Loading:
+ break;
case WorkoutState.OnHold:
+ StartWorkout();
break;
case WorkoutState.Paused:
if (!source.IsCancellationRequested)
{
SetPositionAndSize(WorkoutState.Playing);
+ StartWorkout();
}
break;
{
case WorkoutState.Playing:
Preview.Pause();
+ StopWorkout();
break;
default:
Preview.Pause();
PlayingView.Hide();
PauseView.Show();
+ StopWorkout();
(Task scalePreview, Task movePreview) = Animate(Preview, playing.Preview, pause.Preview, source.Token);
(Task scaleCamera, Task moveCamera) = Animate(cameraOverlayView, playing.Camera, pause.Camera, source.Token);
}
LoadingView.Loaded -= OnLoaded;
+ StartWorkout();
+ }
+
+ private void StartWorkout()
+ {
+ if (BindingContext is ViewModels.ExercisingViewModel viewModel)
+ {
+ viewModel.SquatService.StartWorkout();
+ }
+ }
+
+ private void StopWorkout()
+ {
+ if (BindingContext is ViewModels.ExercisingViewModel viewModel)
+ {
+ viewModel.SquatService.StopWorkout();
+ }
}
private void SetPositionAndSize()