-
Notifications
You must be signed in to change notification settings - Fork 3k
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
Infinite loading on video preview before sending video #39755
Conversation
@paultsimura Please copy/paste the Reviewer Checklist from here into a new comment on this PR and complete it. If you have the K2 extension, you can simply click: [this button] |
@ikevin127 I just tested your PR on both Safari & Chrome on a physical iPhone – it works fine. Can you reliably reproduce the issue you were talking about here? |
This comment was marked as outdated.
This comment was marked as outdated.
@@ -101,4 +109,4 @@ const openRouteInDesktopApp: OpenRouteInDesktopApp = (shortLivedAuthToken = '', | |||
} | |||
}; | |||
|
|||
export {getBrowser, isMobile, isMobileSafari, isSafari, isMobileChrome, openRouteInDesktopApp}; | |||
export {getBrowser, isMobile, isMobileSafari, isMobileWebKit, isSafari, isMobileChrome, openRouteInDesktopApp}; |
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.
Context:
Reviewer asked whether we can use existing
isMobileSafari
.
Nope, we need to cover all iOS: mWeb WebKit-based browser engines, this includes iOS: Chrome, Firefox and ay other browsers which are forced by Apple to use the WebKit engine.
Therefore we need to cover for all of them, otherwise the infinite loading would appear on Chrome / Firefox / other browsers one can install on their iPhone.
haha.. realized that deleted comment 😄 |
This comment was marked as off-topic.
This comment was marked as off-topic.
Reviewer Checklist
Screenshots/VideosAndroid: Nativenot affected platform Android: mWeb Chromenot a affected platform iOS: Nativenot a affected platform iOS: mWeb SafariRPReplay_Final1714852761.movRPReplay_Final1714852880.movMacOS: Chrome / Safarinot a affected platform MacOS: Desktopnot a affected platform |
✋ This PR was not deployed to staging yet because QA is ongoing. It will be automatically deployed to staging after the next production release. |
@ikevin127 @amyevans I'm a bit confused about the Offline steps. It says there should be 'no infinite loading,' but when following the steps offline, there's still an infinite loading screen. Is this expected behavior? Recording.856.mp4 |
@kbecciv My bad, I just copy & pasted the same tests from online without checking. I corrected the offline test just now! Note: It is expected behaviour that we see the infinite loading while offline since this was the behaviour before the PR was merged (can be verified on production). |
🚀 Deployed to production by https://github.com/marcaaron in version: 1.4.71-6 🚀
|
Details
Due to a WebKit browser engine limitation which does not allow us to skip the first milisecond of the video blob programatically via
#t=
(time fragment), we removed that functionality specifically for ifBrowser.isMobileWebKit()
is true which means only for iOS: mWeb.Fixed Issues
$ #39078
PROPOSAL: #39078 (comment)
Tests
Offline tests
TLDR: same as Tests.
QA Steps
TLDR: same as Tests.
PR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodSTYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)StyleUtils.getBackgroundAndBorderStyle(theme.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)Design
label and/or tagged@Expensify/design
so the design team can review the changes.ScrollView
component to make it scrollable when more elements are added to the page.main
branch was merged into this PR after a review, I tested again and verified the outcome was still expected according to theTest
steps.Screenshots/Videos
Android: Native
android.mp4
Android: mWeb Chrome
android-mweb.mp4
iOS: Native
ios.MP4
iOS: mWeb Safari
ios-mweb.MP4
MacOS: Chrome / Safari
web.mov
MacOS: Desktop
desktop.mov