-
Notifications
You must be signed in to change notification settings - Fork 2.9k
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
[$1000] Android - Keyboard is not automatically displayed when editing a comment #5637
Comments
Triggered auto assignment to @tgolen ( |
Triggered auto assignment to @laurenreidexpensify ( |
I think it we disabled the keyboard earlier. This is supposed to be intended functionality but I don't know there has been a new discussion about it recently. When we edit a comment, edit box will scroll down towards the composer and we decided not to open the keyboard due to this. But if keyboard is still opening on other devices then yes this is a real issue. |
Triggered auto assignment to @NikkiWines ( |
(
|
@nitin145 this is a react native project. Not an android native project! |
I think, maybe it's because some element has requested focus. so the keyboard was closed. and we can't show the keyboard due to loss of focus. |
autoFocus props executed only on the first mount |
Please refer to this post for updated information on the n6 hold, we've raised the bonus to $250 for all issues where a PR is created before the N6 hold is lifted. |
The autoFocus prop does not work if there were any animations running on the screen. The below code will shift the focus after the interactions are run, to the
|
Interestingly, I can reproduce the issue on my iOS sim and Android sim (keyboard does not show) but not on my physical iOS device (keyboard does show) I asked @sonialiap to try on her Android device and she confirmed that the keyboard does not show after clicking @parasharrajat, do you know why we wouldn't want the keyboard to show / when we would've changed that? Looking back a couple of months to this PR it seems like we did have the keyboard showing for Android devices. @ddikodroid and @hiennguyen92, can you elaborate a bit on your respective proposed solutions for this if you're interested in taking on this issue. |
Hmm. Indeed, it was added by that issue. I may have confused it with something else but I remember that we used to hide the composer also when the Edit comment is clicked. Now this is not working which is another issue (https://expensify.slack.com/archives/C01GTK53T8Q/p1633793260061400) |
Ah ok - yeah I think we should definitely standardize behavior for the composer when editing (both for beginning and ending an edit) Ideally, I think we'd want to show the composer when |
@laurenreidexpensify It looks like you are commenting on the wrong issue. Anyways, #6138 does not solve this issue. I am still figuring out the root cause here. |
I think @laurenreidexpensify brought this up it because it looks like your draft PR #6138 mentions this issue. |
@NikkiWines @laurenreidexpensify I did some tests and it seems to me that the problem is somehow related to the following line: App/src/pages/home/report/ContextMenu/ContextMenuActions.js Lines 105 to 109 in dc67437
I believe there's a conflict happening between the According my tests, skipping 1 frame is enough to fix this:
This change can be applied at the line above or at App/src/pages/home/report/ContextMenu/PopoverReportActionContextMenu.js Lines 200 to 202 in dc67437
The 2nd option would cause all |
@sidferreira, while this would likely solve our issue, we typically try to avoid solutions that are a bit on the "hackier" side of things since they often come with detriments in the long run and don't lend themselves to clean code. |
@NikkiWines I was thinking about trying |
btw, it seems that there are other issues related to |
@tgolen I did some research and, except if we do some updates on React Native it self, there's no workaround.
Android does have an With that said, I don't see any other options other than "skip a frame". |
It was working before... |
@parasharrajat I'm checking it... |
@parasharrajat So, I've checked the following commits and it wasn't working on any of those: Can you mention any specific commit/version where it is working as expected? |
We are placing all non-critical issues on hold while we're on a company offsite. The hold is expected to be lifted on 11/19 (but could go longer). For any PRs that are submitted before or during the hold, we will add a $250 bonus payment. |
Increased job price to $1000 on behalf of the team! |
Asked QA just to be sure this issue is still occurring, will update when they report back. From @sidferreira's link here it does look like this is a known bug with @marcaaron not sure if we have a process for regressions that aren't introduced by us, but by external libs. Maybe you have some insight here? |
@NikkiWines just a reminder that, under the hood, |
@NikkiWines if you don't get the below answered, want to raise in #contributor-management for more 👀? (fwiw, I don't know of a process)
|
@NikkiWines @tgolen I decided to do some extra tests here, even creating a sandbox project to test it out ( https://github.com/sidferreira/testInputModal ) and even in that simple project the issue happens the same way. Actually, in that sample I even had to disable So, I'm still propose #5637 (comment) (may try to use I agree it is ugly, but, it seems to be a platform issue ( #5637 (comment) ) |
OK, this is sort of where I am landing on this issue... I'd love to get your thoughts on this. I am not sure that having a workaround in our code is better than just leaving the issue the way that it is. I don't think we have a clear understanding of just how bad it makes the UX for users, and if we put the workaround in the code, it definitely leaves the temptation for other developers to copy it, regardless if it's an exception to our styles or not. I propose that we close this issue for now. Then:
I think we should still pay something for contributor time and investigation. |
I agree, closing sounds good for now and I'm also in support of paying some amount for the time + effort spent investigating this issue. @laurenreidexpensify thoughts? |
Okay great - @sidferreira @parasharrajat I'll be hiring you both in Upwork to issue a bonus payment here for investigation and time on this issue, and closing it out. |
oh and to @Santhosh-Sellavel for reporting this issue too |
Sid and Rajat have been paid, and as soon as Santhosh accepts the job I"ll pay him and close out. |
Late to the party @NikkiWines but I think as a general rule if we merge a PR that bumps a library that introduces a regression then whoever created the PR to bump that library effectively introduced that regression and should try to do something about it. |
If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!
Action Performed:
Expected Result:
Keyboard should automatically display so the user can start editing right away
Actual Result:
Keyboard doesn't come up and user has to tap the text box again.
Workaround:
Tapping the text box makes the keyboard appear.
Platform:
Where is this issue occurring?
Version Number: 1.1.4-0
Reproducible in staging?: yes
Reproducible in production?: yes
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos: Any additional supporting documentation
Issue is ONLY reproducible on Android. iOS and mWeb are working as expected.
editcomment.mp4
Expensify/Expensify Issue URL:
Issue reported by: @Santhosh-Sellavel
Slack conversation: https://expensify.slack.com/archives/C01GTK53T8Q/p1633369460395200
View all open jobs on GitHub
The text was updated successfully, but these errors were encountered: