Skip to content
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

[HOLD for payment 2022-11-29] [$250] Android/iOS - Chat and the FAB menu options open on the chat page when tapping both in quick succession. #11229

Closed
kavimuru opened this issue Sep 23, 2022 · 83 comments
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Design Engineering External Added to denote the issue can be worked on by a contributor Reviewing Has a PR in review

Comments

@kavimuru
Copy link

kavimuru commented Sep 23, 2022

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:

  1. Launch App and login
  2. From the LHN home screen, tap on any chat row and quickly tap on the green + icon (FAB)

Expected Result:

Only the chat should open as it was the first tap.

Actual Result:

Chat and FAB menu open at the same time

Workaround:

Unknown

Platform:

Where is this issue occurring?

  • Android
  • iOS

Version Number: v1.2.5-0
Reproducible in staging?: Y
**Reproducible in production?:**Y
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Notes/Photos/Videos:

Android:

https://user-images.githubusercontent.com/43996225/191874271-d3bcc36c-d4d0-4898-8a4c-61a254d43849.mp4

iOS:
IMG_8500

Upwork URL: https://www.upwork.com/jobs/~0159458d877f5bc785
Issue reported by: Applause internal team
Slack conversation:

View all open jobs on GitHub

@melvin-bot
Copy link

melvin-bot bot commented Sep 23, 2022

Triggered auto assignment to @Beamanator (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

@Beamanator Beamanator added the External Added to denote the issue can be worked on by a contributor label Sep 23, 2022
@melvin-bot
Copy link

melvin-bot bot commented Sep 23, 2022

Triggered auto assignment to @trjExpensify (External), see https://stackoverflow.com/c/expensify/questions/8582 for more details.

@melvin-bot
Copy link

melvin-bot bot commented Sep 23, 2022

Triggered auto assignment to Contributor-plus team member for initial proposal review - @parasharrajat (External)

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Sep 23, 2022
@melvin-bot
Copy link

melvin-bot bot commented Sep 23, 2022

Current assignee @Beamanator is eligible for the External assigner, not assigning anyone new.

@melvin-bot melvin-bot bot changed the title Android - Chat and FAB menu options open in the same time on one page. [$250] Android - Chat and FAB menu options open in the same time on one page. Sep 23, 2022
@Beamanator
Copy link
Contributor

Looks like a good External issue, maybe we can prevent opening the FAB / prevent having it clickable if the route includes a report ID? Just an idea

@trjExpensify trjExpensify changed the title [$250] Android - Chat and FAB menu options open in the same time on one page. [$250] Android/iOS - Chat and FAB menu options open at the same time on one page. Sep 23, 2022
@trjExpensify trjExpensify changed the title [$250] Android/iOS - Chat and FAB menu options open at the same time on one page. [$250] Android/iOS - Chat and the FAB menu options open on the chat page when tapping both in quick succession. Sep 23, 2022
@trjExpensify
Copy link
Contributor

  1. Launch App and login as HT account

What does HT stand for and will a contributor who gets this issue understand that abbreviation and be able to log-in to a "HT account"?

Only the FAB should be open as last tap or only Chat page should open

The expected results are ambiguous. It would need to be either of these things, and we should provide guidance on which one we want it to be. IMO, the last tap should be the action we take. So the chat page wouldn't open, only the global create menu would. @Beamanator, what are your thoughts there? I kinda' think this issue goes away as the app becomes more performant when navigating. As in, you won't have time to move your thumb and click the FAB.

Where is this issue occurring?

Android

Did we try reproducing on iOS? I can actually reproduce it there, so going to update the OP:

IMG_8500

Looks like a good External issue, maybe we can prevent opening the FAB / prevent having it clickable if the route includes a report ID?

@Beamanator but on web/desktop it's expected that you can open the global create menu while currently on a chat report, will that proposal not cause problems on those platforms?

@Beamanator
Copy link
Contributor

Sooo good point, HT is "High Traffic" which I think is a bit difficult to test as a contributor, but actually I'm even reproducing easily on Android w/ a non-HT account, so I'll remove that from the OP & title

IMO, the last tap should be the action we take. So the chat page wouldn't open, only the global create menu would. @Beamanator, what are your thoughts there?

Interesting, I was thinking the first action we take 🤔 Should we bring this to Slack for a wider discussion?

I kinda' think this issue goes away as the app becomes more performant when navigating. As in, you won't have time to move your thumb and click the FAB.

That's possible, but it would be pretty easy to tap a report & touch the FAB in VERY quick succession, so I still think it would be good to address this for now & later

And thanks for reproducing on iOS! It's fine to have proposals that will be for only 2 platforms, as long as we make sure there's no regressions on web / desktop :D

@jeet-dhandha
Copy link
Contributor

jeet-dhandha commented Sep 26, 2022

Proposal

  1. For this we can simply navigate user back to HOME screen if he accidentally presses on the FAB menu.

Also tested both scenarios:

  1. Press on FAB and then press on a chat.
  2. Press on chat and then press on FAB.

Code:

Screenshot 2022-09-26 at 6 22 15 AM

Fixed Video:

Screen.Recording.2022-09-26.at.6.20.46.AM.mov

@melvin-bot melvin-bot bot added the Overdue label Sep 26, 2022
@Beamanator
Copy link
Contributor

Awaiting proposal review, not overdue

@melvin-bot melvin-bot bot removed the Overdue label Sep 26, 2022
@melvin-bot melvin-bot bot added Weekly KSv2 and removed Daily KSv2 labels Sep 26, 2022
@trjExpensify
Copy link
Contributor

Job on Upwork here: https://www.upwork.com/jobs/~019fb94172f17c76bc

@chauchausoup
Copy link

I just found that the issue is replicating in few other places too.

  • search box + LHN
  • settings avatar + LHN

@trjExpensify
Copy link
Contributor

I'm not sure I understand fully, @chauchausoup. Can you post us some screenshots/vids? 🤔

@trjExpensify
Copy link
Contributor

In the meantime, @parasharrajat @Beamanator are we waiting on something for feedback on this current proposal? #11229 (comment)

@parasharrajat
Copy link
Member

Looking at it now and trying to understand the issue first 🎃 .

@parasharrajat
Copy link
Member

parasharrajat commented Sep 29, 2022

I do not get the expected result. What should be done to fix this? @trjExpensify

Only the FAB should be open as the last tap or only the Chat page should open

Both statements are contradicting each other. IMO, the first trigger action should take priority which is the chat opening action in our case. (try any native app and try to click two actions simultaneously, the one that is clicked first takes priority).

But the proposal #11229 (comment) is not matching any of them.

@Beamanator
Copy link
Contributor

Agree with @parasharrajat 👍 And yes, your spidey-senses were correct @trjExpensify 😉

@trjExpensify
Copy link
Contributor

Cool, so the job is here and I've sent you the offer @aimane-chnaif, and @parasharrajat for C+.

Look forward to the PR! 🚀

@melvin-bot
Copy link

melvin-bot bot commented Nov 14, 2022

@Beamanator, @trjExpensify, @parasharrajat, @aimane-chnaif Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@melvin-bot melvin-bot bot added the Overdue label Nov 14, 2022
@trjExpensify trjExpensify added the Reviewing Has a PR in review label Nov 14, 2022
@melvin-bot melvin-bot bot removed the Overdue label Nov 14, 2022
@trjExpensify
Copy link
Contributor

Morning, Melv. PR is up, awaiting a review from @parasharrajat! 🎉

@melvin-bot
Copy link

melvin-bot bot commented Nov 15, 2022

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

  • @trjExpensify A regression test has been added or updated so that the same bug will not reach production again. Link to the GH issue for creating the test here:
  • @parasharrajat @aimane-chnaif @Beamanator The PR that introduced the bug has been identified. Link to the PR:
    • This wasn't a regression, the "issue" has always been present, we just now decided to "fix" it
  • @trjExpensify The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
    • N/A in this case
  • @trjExpensify A discussion in #contributor-plus has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
  • @trjExpensify Payment has been made to the issue reporter (if applicable)
  • @trjExpensify Payment has been made to the contributor that fixed the issue (if applicable)
  • @trjExpensify Payment has been made to the contributor+ that helped on the issue (if applicable)

@trjExpensify
Copy link
Contributor

Hit staging, awaiting a prod deploy to start the timer.

@aimane-chnaif
Copy link
Contributor

@trjExpensify Am I eligible for more compensation here?
Reason:

@trjExpensify
Copy link
Contributor

Yep, we'll combine the payment for the two. Here's the job to accept the offer on (@parasharrajat as well).

I'm going to close the other issue out.

@aimane-chnaif
Copy link
Contributor

Thanks @trjExpensify
Hope PR timeline is eligible for bonus as well

@aimane-chnaif
Copy link
Contributor

Cool, so the job is here and I've sent you the offer @aimane-chnaif, and @parasharrajat for C+.

Look forward to the PR! 🚀

@trjExpensify I just noticed I have already been hired and accepted for this job 11 days ago so I think this one can be used for 50% bonus if you agree

@trjExpensify
Copy link
Contributor

Ah, I couldn't find that one! Cool, so we'll use:

  • That job for the bonus ($250 for getting it merged in +3 days)
  • This one for the fix ($500 for the issues combined).

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Daily KSv2 labels Nov 22, 2022
@melvin-bot
Copy link

melvin-bot bot commented Nov 22, 2022

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.2.29-7 and is now subject to a 7-day regression period 📆. Here is the list of pull requests that resolve this issue:

If no regressions arise, payment will be issued on 2022-11-29. 🎊

After the hold period, please check if any of the following need payment for this issue, and if so check them off after paying:

  • External issue reporter
  • Contributor that fixed the issue
  • Contributor+ that helped on the issue and/or PR

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

  • Merged PR within 3 business days of assignment - 50% bonus
  • Merged PR more than 9 business days after assignment - 50% penalty

@melvin-bot melvin-bot bot changed the title [$250] Android/iOS - Chat and the FAB menu options open on the chat page when tapping both in quick succession. [HOLD for payment 2022-11-29] [$250] Android/iOS - Chat and the FAB menu options open on the chat page when tapping both in quick succession. Nov 22, 2022
@melvin-bot
Copy link

melvin-bot bot commented Nov 22, 2022

BugZero Checklist: The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed:

  • [@parasharrajat / @aimane-chnaif / @Beamanator] The PR that introduced the bug has been identified. Link to the PR:
  • [@parasharrajat / @aimane-chnaif / @Beamanator] The offending PR has been commented on, pointing out the bug it caused and why, so the author and reviewers can learn from the mistake. Link to comment:
  • [@parasharrajat / @aimane-chnaif / @Beamanator] A discussion in #expensify-bugs has been started about whether any other steps should be taken (e.g. updating the PR review checklist) in order to catch this type of bug sooner. Link to discussion:
  • [@trjExpensify] A regression test has been added or updated so that the same bug will not reach production again. Link to the GH issue for creating the test here:

@mvtglobally
Copy link

Issue not reproducible during KI retests. (First week)

@Beamanator
Copy link
Contributor

I think this "issue" has been around forever, no specific bug - so I think we can check off the first 3 points - we probably should add some regression test for this though

@melvin-bot melvin-bot bot added Daily KSv2 and removed Weekly KSv2 labels Nov 29, 2022
@trjExpensify
Copy link
Contributor

Settled up these contracts, so we're all square here. 🎉

we probably should add some regression test for this though

I don't think it's worth adding one for an edge case that in practice is incredibly hard to reproduce. Unless the app is very, very slow, you don't get the chance to tap both a chat row and the FAB in quick succession unless you force it using two thumbs or something.

Going to close this out, but let me know if you disagree.

@parasharrajat
Copy link
Member

@trjExpensify Based on #11229 (comment), I should be eligible for the bonus as well.

@trjExpensify
Copy link
Contributor

You were hired and paid on both of those linked jobs above, no?

@parasharrajat
Copy link
Member

Yeah, found it. Thanks.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 Design Engineering External Added to denote the issue can be worked on by a contributor Reviewing Has a PR in review
Projects
None yet
Development

No branches or pull requests