-
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
Fix/24314 the search field does not focus when selecting money request participants #25922
Fix/24314 the search field does not focus when selecting money request participants #25922
Conversation
@cubuspl42 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] |
@Swor71 Please complete the checklist |
@cubuspl42 hey, updated the checklist |
@cubuspl42 hey, would you have a moment to give this one a review, please? |
@Swor71 I'm very sorry, I missed that notification. Catching up. |
@Swor71 Please merge |
@Swor71 Is this summary valid? |
@cubuspl42 oh, just noticed someone changed this as in the beginning it was only a browser issue and I didn't see this happening while checking native. I'd focus on Chrome on Android, Safari on iOS and Chrome for desktop tbh |
I'm just establishing facts. It's quite important to know what wasn't working to determine whether it was fixed! |
@Swor71 I'm not able to reproduce the issue on any platform on |
@cubuspl42 I'll double check myself in a moment with the latest main, but I last week I could reproduce it on iPhone 14 Pro iOS 16.4 and Pixel 5 API 31 as well as just regular web build tested in Chrome |
@cubuspl42 I can still reproduce the issue with the latest main. The input is not focused after pressing |
request-money-focus-compressed.mp4I's a bit tricky case. I'm aware that other people also had trouble reproducing it:
In general, I should confirm that your PR fixed the issue, but the best I can do is to confirm that what was working (for me!) is still working. What I suggest is that you additionally include the recordings from all platforms where you are able to reproduce the bug on |
@Swor71 The plot thickens. I'm now able to reproduce the issue on the PR branch... (iOS Simulator / Safari) request-money-focus-ios-web-repro1.mov |
@cubuspl42 Latest main, still able to reproduce the issue on Chrome, Chrome Android, Safari iOS Screen.Recording.2023-09-04.at.14.24.26.movScreen.Recording.2023-09-04.at.14.26.36.movScreen.Recording.2023-09-04.at.14.27.49.mov |
@Swor71 I wasn't joking, I now am able to reproduce the problem on iOS/Safari, on your branch, after the supposed fix. Both simulator and physical. So we have a problem. |
@cubuspl42 we have already open issue for iOS/Safari |
Reviewer Checklist
Screenshots/VideosWebrequest-money-focus-web.mp4Mobile Web - Chromerequest-money-focus-android-web-compressed.mp4Mobile Web - Safarirequest-money-focus-ios-web.mp4DesktopiOSrequest-money-focus-ios.mp4Androidrequest-money-focus-android-compressed.mp4 |
Thank you! |
@cubuspl42 that's indeed interesting, I've had the same experience being able to reproduce the issue on consecutive attempts (always with latest main) and then having it fixed by adding the delay prop, and on all mentioned platforms. |
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 but we're on a merge freeze for our conferences this week. Gonna have to come bacak to merge this later.
src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsSelector.js
Outdated
Show resolved
Hide resolved
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.
@Swor71 let's change the solution to use onTransitionEnd
please
@luacmartins hey, I understand that you mean |
Yes, thank you for the understanding! |
@luacmartins @cubuspl42 One thing I noticed, but it might be this particular emulator as it was not so visible before or at all with Platform vids with those changes: Screen.Recording.2023-09-13.at.14.07.31.movScreen.Recording.2023-09-13.at.14.08.04.movScreen.Recording.2023-09-13.at.14.19.51.mov |
src/pages/iou/steps/MoneyRequstParticipantsPage/MoneyRequestParticipantsPage.js
Show resolved
Hide resolved
@Swor71 we also have conflicts |
@luacmartins @cubuspl42 |
It seems like we already fixed the issue then. Maybe we should just close this PR. |
@luacmartins You said "maybe", so what are the other options? 😃 I say we close it, and let's move the discussion to our original issue. |
Yea, let's close this. |
Details
This PR fixes the issue of the search field not being focused when selecting money request participants. By adding
shouldDelayFocus
prop toOptionsSelector
inMoneyRequestParticipantsSelector
the focus is delayed to give time for transitions to play out (as it's stated in theBaseOptionsSelector
component).This works on Chrome on Android, Safari on iOS and regular Chrome web browser as you can see in the provided videos below.
Fixed Issues
$ #24314
PROPOSAL: as per these comments and an actual one line change we opted for omitting the proposal stage
Tests
Next
buttonOffline tests
QA Steps
Next
buttonPR Author Checklist
### Fixed Issues
section aboveTests
sectionOffline steps
sectionQA steps
sectiontoggleReport
and notonIconClick
)myBool && <MyComponent />
.src/languages/*
files and using the translation methodWaiting for Copy
label for a copy review on the original GH to get the correct copy.STYLE.md
) were followedAvatar
, I verified the components usingAvatar
are working as expected)/** comment above it */
this
properly so there are no scoping issues (i.e. foronClick={this.submit}
the methodthis.submit
should be bound tothis
in the constructor)this
are necessary to be bound (i.e. avoidthis.submit = this.submit.bind(this);
ifthis.submit
is never passed to a component event handler likeonClick
)StyleUtils.getBackgroundAndBorderStyle(themeColors.componentBG)
)Avatar
is modified, I verified thatAvatar
is working as expected in all cases)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
Web
Screen.Recording.2023-08-25.at.12.02.09.mov
Mobile Web - Chrome
Screen.Recording.2023-08-24.at.16.33.25.mov
Mobile Web - Safari
Screen.Recording.2023-08-25.at.11.53.24.mov
Desktop
iOS
Android