Safari Extension Breaks Auto-Play Blocking
Nobody has claimed this yet.
- Dominant language
- TypeScript
- Stars
- 13.8k
- Forks
- 2k
- Avg merge
- 3d 9h
- Merged PRs (30d)
- 397
Description
### Steps To Reproduce
If the Bitwarden extension is enabled some embedded videos will play, even if Safari's preferences are set to block auto-play. Autofill doesn't have to be turned on; the extension simply being enabled and reading the page is enough to break Safari in this case.
Add Bitwarden extension. Set Safari Preferences, in Preferences, Websites, Auto-Play to Never Auto-Play or Stop Media With Sound. Go to
https://gbtimes.com
(just one of the ones I've come across, but it makes a good example).
### Expected Result
Video no play.
### Actual Result
Video play.
### Screenshots or Videos
_No response_
### Additional Context
_No response_
### Operating System
macOS
### Operating System Version
_No response_
### Web Browser
Safari
### Browser Version
18.3
### Environment Versions
Version: 2025.2.0
SDK: 'main (28c7e29)'
Server version: 2025.2.4
### Issue Tracking Info
- [x] I understand that work is tracked outside of Github. A PR will be linked to this issue should one be opened to address it, but Bitwarden doesn't use fields like "assigned", "milestone", or "project" to track progress.
Contributor guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
Research direction
Reproduce the issue in Safari 18.3 on macOS with Bitwarden version 2025.2.0 enabled and autoplay set to Never Auto-Play or Stop Media With Sound, using gbtimes.com as the example. Trace the Safari extension's page-reading behavior to identify why merely enabling it permits embedded videos to play, then verify that autoplay blocking remains effective without autofill enabled.
Written by the indexing model from the issue text.
Assessment
- Tech stack
- typescript
- Domain
- frontend
- Issue type
- Bug
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Activity status
- Stale
- Clarity
- Needs clarification
- Newbie friendliness
- 35/100