Files
WerkoutIOS/docs/step7_ui_accessibility_round1.md

2.7 KiB

Step 7 UI/State/Accessibility Round 1

Coverage

  • Reviewed and patched high-traffic iOS/watchOS UI paths:
    • workout browsing, planned workouts, workout detail, create-workout flow, login, watch main view
  • Ran validation:
    • ./scripts/smoke/smoke_all.sh

Fixes Applied

  1. Create workout state consistency and duplicate-submit prevention

    • iphone/Werkout_ios/Views/CreateWorkout/CreateViewModels.swift
    • Added isUploading gate, title trimming validation, shared WorkoutValidation integration.
  2. Weight stepper logic bug

    • iphone/Werkout_ios/Views/CreateWorkout/CreateViewModels.swift
    • Fixed weight decrement mismatch (-15 to -5) to match increment behavior.
  3. Create-workout UX cleanup and accessibility

    • iphone/Werkout_ios/Views/CreateWorkout/CreateWorkoutMainView.swift
    • Replaced visible sentinel row with hidden spacer, disabled upload button while uploading, added button labels/hints.
  4. Superset editing accessibility/state

    • iphone/Werkout_ios/subview/CreateWorkoutSupersetView.swift
    • Avoided sheet toggle race by setting showAddExercise = true; added accessibility labels/hints.
  5. Exercise action controls accessibility

    • iphone/Werkout_ios/Views/CreateWorkout/CreateExerciseActionsView.swift
    • Added accessibility labels to steppers and icon-only controls.
  6. Workout list/planned list row accessibility

    • iphone/Werkout_ios/Views/AllWorkouts/AllWorkoutsListView.swift
    • iphone/Werkout_ios/subview/PlannedWorkoutView.swift
    • Converted tap-only rows to plain Buttons for VoiceOver/focus reliability.
  7. Workout detail list ordering/scroll stability

    • iphone/Werkout_ios/Views/WorkoutDetail/ExerciseListView.swift
    • Aligned list ordering with sorted superset order and introduced stable row IDs for consistent scroll targeting.
  8. Workout detail control accessibility + progress text guard

    • iphone/Werkout_ios/Views/WorkoutDetail/WorkoutDetailView.swift
    • Added accessibility labels to icon-only controls and avoided negative progress display.
  9. Login form input/accessibility improvements

    • iphone/Werkout_ios/Views/Login/LoginView.swift
    • Added keyboard/input autocorrection settings and accessibility labels/hints.
  10. HealthKit auth safety/logging in all-workouts screen

    • iphone/Werkout_ios/Views/AllWorkouts/AllWorkoutsView.swift
    • Removed force-unwrapped HK types and added runtime warning on failed authorization.
  11. watchOS no-workout screen and accessibility polish

    • iphone/Werkout_watch Watch App/MainWatchView.swift
    • Replaced emoji placeholder with clear status text/icon and added combined accessibility labels.

Validation

  • Smoke suite passed after fixes:
    • token scan
    • SharedCore tests
    • iOS/watchOS/tvOS builds