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

[$250] Android - Disabled bank detail input field flickers when navigating back #51397

Closed
1 of 8 tasks
IuliiaHerets opened this issue Oct 24, 2024 · 44 comments
Closed
1 of 8 tasks
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors retest-weekly Apply this label if you want this issue tested on a Weekly basis by Applause Weekly KSv2

Comments

@IuliiaHerets
Copy link

IuliiaHerets commented Oct 24, 2024

If you haven’t already, check out our contributing guidelines for onboarding and email contributors@expensify.com to request to join our Slack channel!


Version Number: 9.0.53-0
Reproducible in staging?: Y
Reproducible in production?: N
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?: Y
Issue was found when executing this PR: #51234
Email or phone of affected tester (no customers): nathanmulugetatesting+1937@gmail.com
Issue reported by: Applause Internal Team

Action Performed:

  1. Open NewDot hybrid app
  2. Create a workspace
  3. Enable workflows
  4. Start manual bank account connection flow
  5. On the first step enter routing number and account number and click on next
  6. Go back to the previous page and observe the input fields

Expected Result:

Disabled input fields without flickering is observed

Actual Result:

Disabled input fields flicker

Workaround:

Unknown

Platforms:

  • Android: Standalone
  • Android: HybridApp
  • Android: mWeb Chrome
  • iOS: Standalone
  • iOS: HybridApp
  • iOS: mWeb Safari
  • MacOS: Chrome / Safari
  • MacOS: Desktop

Screenshots/Videos

Bug6643768_1729719575459.Screen_Recording_20241024_003426.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021871546683215081160
  • Upwork Job ID: 1871546683215081160
  • Last Price Increase: 2025-01-14
Issue OwnerCurrent Issue Owner: @ishpaul777
@IuliiaHerets IuliiaHerets added DeployBlockerCash This issue or pull request should block deployment Bug Something is broken. Auto assigns a BugZero manager. labels Oct 24, 2024
Copy link

melvin-bot bot commented Oct 24, 2024

Triggered auto assignment to @youssef-lr (DeployBlockerCash), see https://stackoverflowteams.com/c/expensify/questions/9980/ for more details.

Copy link

melvin-bot bot commented Oct 24, 2024

💬 A slack conversation has been started in #expensify-open-source

Copy link

melvin-bot bot commented Oct 24, 2024

Triggered auto assignment to @jliexpensify (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details. Please add this bug to a GH project, as outlined in the SO.

@melvin-bot melvin-bot bot added the Daily KSv2 label Oct 24, 2024
@github-actions github-actions bot added Engineering Hourly KSv2 and removed Daily KSv2 labels Oct 24, 2024
Copy link
Contributor

👋 Friendly reminder that deploy blockers are time-sensitive ⏱ issues! Check out the open `StagingDeployCash` deploy checklist to see the list of PRs included in this release, then work quickly to do one of the following:

  1. Identify the pull request that introduced this issue and revert it.
  2. Find someone who can quickly fix the issue.
  3. Fix the issue yourself.

@IuliiaHerets IuliiaHerets changed the title Hybrid - Android - Disabled bank detail input field flickers when navigating back Android - Disabled bank detail input field flickers when navigating back Oct 24, 2024
@youssef-lr
Copy link
Contributor

Checking

@youssef-lr youssef-lr added Daily KSv2 and removed DeployBlockerCash This issue or pull request should block deployment Hourly KSv2 labels Oct 24, 2024
@melvin-bot melvin-bot bot added the Overdue label Oct 28, 2024
Copy link

melvin-bot bot commented Oct 28, 2024

@youssef-lr, @jliexpensify Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@youssef-lr
Copy link
Contributor

No update, low priority

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Oct 30, 2024
Copy link

melvin-bot bot commented Nov 4, 2024

@youssef-lr, @jliexpensify Huh... This is 4 days overdue. Who can take care of this?

@jliexpensify
Copy link
Contributor

@youssef-lr - want to make this a Weekly if it's lower priority?

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Nov 6, 2024
Copy link

melvin-bot bot commented Nov 11, 2024

@youssef-lr, @jliexpensify Huh... This is 4 days overdue. Who can take care of this?

@jliexpensify jliexpensify added Weekly KSv2 and removed Daily KSv2 labels Nov 11, 2024
@melvin-bot melvin-bot bot removed the Overdue label Dec 31, 2024
Copy link

melvin-bot bot commented Jan 6, 2025

@youssef-lr, @jliexpensify, @abdulrahuman5196 Huh... This is 4 days overdue. Who can take care of this?

@melvin-bot melvin-bot bot added the Overdue label Jan 6, 2025
@abdulrahuman5196
Copy link
Contributor

Hi @jliexpensify , Sorry, I am still not able to get this through. I don't want to delay this issue. Kindly re-apply the label for different C+. Unassigning myself.

@melvin-bot melvin-bot bot removed the Overdue label Jan 6, 2025
@abdulrahuman5196 abdulrahuman5196 removed their assignment Jan 6, 2025
@jliexpensify jliexpensify added External Added to denote the issue can be worked on by a contributor and removed External Added to denote the issue can be worked on by a contributor labels Jan 7, 2025
Copy link

melvin-bot bot commented Jan 7, 2025

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

@jliexpensify
Copy link
Contributor

Hi @ishpaul777 - can you help us with this issue? We've got some proposals - thanks!

@ishpaul777
Copy link
Contributor

will revieew today 🙇

Copy link

melvin-bot bot commented Jan 7, 2025

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@huult
Copy link
Contributor

huult commented Jan 8, 2025

Edited by proposal-police: This proposal was edited at 2025-01-08 16:13:55 UTC.

Proposal

Please re-state the problem that we are trying to solve in this issue.

Disabled bank detail input field flickers when navigating back

What is the root cause of that problem?

When we return from the personal info section, the value of reimbursementAccount changes three times. The first and last times, reimbursementAccount has a value, while the second time, reimbursementAccount is undefined.

const [reimbursementAccount] = useOnyx(ONYXKEYS.REIMBURSEMENT_ACCOUNT);

With that, the condition to disable the input is determined by the reimbursementAccount data, where it alternates between disable being true, then false, and then true again, which has caused this issue to occur.

const hasBankAccountData = !!(reimbursementAccount?.achData?.bankAccountID ?? '');

The reimbursementAccount is undefined, which indicates that the response data is incomplete.

What changes do you think we should make in order to solve the problem?

To resolve this issue, we need to ensure that the component waits for the reimbursementAccount data to fully load by checking the isLoadingOnyx status. If isLoadingOnyx is true, skip updating while the data is still loading

    const [reimbursementAccount, reimbursementAccountResult] = useOnyx(ONYXKEYS.REIMBURSEMENT_ACCOUNT);
    const [hasBankAccountData, setHasBankAccountData] = useState(!!(reimbursementAccount?.achData?.bankAccountID ?? ''));

    useEffect(() => {
        if (isLoadingOnyxValue(reimbursementAccountResult)) {
            return;
        }

        setHasBankAccountData(!!(reimbursementAccount?.achData?.bankAccountID ?? ''));
    }, [reimbursementAccount?.achData?.bankAccountID, reimbursementAccountResult]);

What specific scenarios should we cover in automated tests to prevent reintroducing this issue in the future?

This issue UI bug no need the test

What alternative solutions did you explore? (Optional)

Reminder: Please use plain English, be brief and avoid jargon. Feel free to use images, charts or pseudo-code if necessary. Do not post large multi-line diffs or write walls of text. Do not create PRs unless you have been hired for this job.

@jliexpensify
Copy link
Contributor

Bumping @ishpaul777 for reviews please! Thanks.

@ishpaul777
Copy link
Contributor

apologies for delay here, i have been strugling to run android app locally on my Dev enviornment past few days but now its solved I'll review proposal soon

@ishpaul777
Copy link
Contributor

is this still reproducable i could not reproduce

Screen.Recording.2025-01-10.at.3.21.22.PM.mov

@jliexpensify
Copy link
Contributor

Hmm the PR was from October - lets get Applause to re-test

@jliexpensify jliexpensify added the retest-weekly Apply this label if you want this issue tested on a Weekly basis by Applause label Jan 10, 2025
Copy link

melvin-bot bot commented Jan 14, 2025

@youssef-lr, @jliexpensify, @ishpaul777 Whoops! This issue is 2 days overdue. Let's get this updated quick!

@melvin-bot melvin-bot bot added the Overdue label Jan 14, 2025
@jliexpensify jliexpensify added Weekly KSv2 and removed Daily KSv2 labels Jan 14, 2025
@melvin-bot melvin-bot bot removed the Overdue label Jan 14, 2025
@jliexpensify
Copy link
Contributor

Waiting on a re-test, labels updated

Copy link

melvin-bot bot commented Jan 14, 2025

📣 It's been a week! Do we have any satisfactory proposals yet? Do we need to adjust the bounty for this issue? 💸

@mvtglobally
Copy link

Issue not reproducible during KI retests. (First week)

@jliexpensify
Copy link
Contributor

Nice, that confirms what @ishpaul777 is seeing - closing this.

@github-project-automation github-project-automation bot moved this from Bugs and Follow Up Issues to Done in [#whatsnext] #expense Jan 19, 2025
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
Bug Something is broken. Auto assigns a BugZero manager. Engineering External Added to denote the issue can be worked on by a contributor Help Wanted Apply this label when an issue is open to proposals by contributors retest-weekly Apply this label if you want this issue tested on a Weekly basis by Applause Weekly KSv2
Projects
Status: Done
Development

No branches or pull requests

9 participants