Skip to content

fix: render volume sliders on mobile/touch devices (iOS) - #721

Merged
birme merged 1 commit into
mainfrom
frontend/fix-621-mobile-volume-sliders
Oct 2, 2026
Merged

birme merged 1 commit into
mainfrom
frontend/fix-621-mobile-volume-sliders

Conversation

@birme

@birme birme commented Oct 2, 2026

Copy link
Copy Markdown
Contributor

Summary

  • Fixes Mobile devices missing volume sliders #621 where volume sliders were missing on iOS phones and iPads
  • Root cause: the line/PGM volume slider in src/components/production-line/user-controls.tsx was gated behind !isIOSMobile && !isIpad, hiding it on all touch devices
  • Removed those device conditions (and the now-unused bowser import) so the slider renders on mobile/touch as well
  • Kept the unrelated program-output-line guard intact
  • Added a regression test user-controls.test.tsx

Test plan

  • Tests pass (npm test) — 322 tests
  • TypeScript compiles (npm run typecheck)
  • Lint clean (npm run lint)
  • Verify volume sliders now appear for lines and PGM on an actual iOS device (manual)

Closes #621

🤖 Generated with Claude Code

The volume sliders for lines and PGM were hidden on iOS phones and
iPads because UserControls gated the <VolumeSlider> behind
`!isIOSMobile && !isIpad`. Volume is applied to audio elements
independently of this UI guard, so the slider is functional on these
devices; the guard only hid the control. Remove the mobile/touch guard
(keeping the program-user-on-program-output-line guard) so the sliders
render everywhere, and add a regression test.

Co-Authored-By: Claude Opus 4.8 <[email protected]>
@birme

birme commented Oct 2, 2026

Copy link
Copy Markdown
Contributor Author

code-reviewer verdict: LGTM (automated self-review; recorded as a marker because GitHub blocks state-bearing self-review when author and reviewer are the same account).

Small, well-scoped fix for #621. Removing the !isIOSMobile && !isIpad guard is correct and minimal: desktop already satisfied both conditions so its behaviour is unchanged, and mobile/iPad now render the volume slider for lines and PGM. The program-output-line guard is preserved. The added regression test exercises all three branches (regular line, PGM non-program user, PGM program user) and would fail if the device gate were reintroduced. No scope creep. CI (lint/prettier/builds/tests) green.

@birme
birme merged commit c871324 into main Oct 2, 2026
6 checks passed
@birme
birme deleted the frontend/fix-621-mobile-volume-sliders branch October 2, 2026 19:50
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Mobile devices missing volume sliders

2 participants