-
-
Notifications
You must be signed in to change notification settings - Fork 1.1k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
fix: Use custom controls for iOS video (#7729) #7737
Conversation
CLA Signature Action: All authors have signed the CLA. You may need to manually re-run the blocking PR check if it doesn't pass in a few minutes. |
E2E test started on Bitrise: https://app.bitrise.io/app/be69d4368ee7e86d/pipelines/4eb79b2c-a839-47ff-974f-736bc47331a5 |
Codecov ReportAttention:
Additional details and impacted files@@ Coverage Diff @@
## main #7737 +/- ##
==========================================
+ Coverage 34.97% 35.08% +0.10%
==========================================
Files 1034 1035 +1
Lines 27529 27544 +15
Branches 2298 2313 +15
==========================================
+ Hits 9629 9664 +35
+ Misses 17387 17360 -27
- Partials 513 520 +7
☔ View full report in Codecov by Sentry. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Awesome work! LGTM, it would be cool to convert this to typescript and do an unit test for when the mute button is displayed if you have the time since this is a sev1
Kudos, SonarCloud Quality Gate passed! |
Was not able to crash app on iPhone 12 iOS 16.2 |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
LGTM
Description
It was discovered that the video begins crashing the app for iOS 17.2+ physical devices. While there is no solution in the latest react-native-video package at the moment (TheWidlarzGroup/react-native-video#3329), we can patch it by removing the
controls
prop and temporarily use custom controls (a play/pause + mute controls). The tradeoff is that other features such as full screen and seeking will not be available on iOS.Related issues
Fixes: #7729
Manual testing steps
Screenshots/Recordings
Before
After
iOS 17.2 Interaction
https://github.com/MetaMask/metamask-mobile/assets/10508597/8976d5b7-d276-4834-9496-0ba8608e25e3
Video with play/pause + mute controls on settings
https://github.com/MetaMask/metamask-mobile/assets/10508597/492fb78d-3703-4714-bed1-8ddd7b631efa
Video with play/pause + mute controls on onboarding
https://github.com/MetaMask/metamask-mobile/assets/10508597/14780058-c595-4fb9-8aab-9987120c8126
Android remains the same
https://recordit.co/pTuloJmuIn
Pre-merge author checklist
Pre-merge reviewer checklist