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

[$125] Categorize - Checkbox does not appear next to the categories in Categories RHP #52131

Closed
2 of 8 tasks
lanitochka17 opened this issue Nov 6, 2024 · 44 comments
Closed
2 of 8 tasks
Assignees
Labels
Bug Something is broken. Auto assigns a BugZero manager. External Added to denote the issue can be worked on by a contributor Reviewing Has a PR in review Weekly KSv2

Comments

@lanitochka17
Copy link

lanitochka17 commented Nov 6, 2024

If you haven’t already, check out our contributing guidelines for onboarding and email [email protected] to request to join our Slack channel!


Version Number: 9.0.58-1
Reproducible in staging?: Y
Reproducible in production?: Y
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?: N/A
If this was caught during regression testing, add the test name, ID and link from TestRail: N/A
Email or phone of affected tester (no customers): [email protected]
Issue reported by: Applause - Internal Team

Action Performed:

  1. Go to staging.new.expensify.com
  2. Go to workspace settings > Categories
  3. Disable all the categories
  4. Go to self DM
  5. Track a manual expense
  6. Click Categorize it from the actionable whisper
  7. Select the workspace with all the categories disabled

Expected Result:

Checkbox will appear next to the categories in Categories RHP so that user can bulk select all the categories

Actual Result:

Checkbox does not appear next to the categories in Categories RHP

Workaround:

Unknown

Platforms:

Which of our officially supported platforms is this issue occurring on?

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

Screenshots/Videos

Add any screenshot/video evidence
Bug6656768_1730912358115.20241107_005550.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021854581870980912212
  • Upwork Job ID: 1854581870980912212
  • Last Price Increase: 2024-11-18
  • Automatic offers:
    • neonbhai | Contributor | 105008672
Issue OwnerCurrent Issue Owner: @mananjadhav
@lanitochka17 lanitochka17 added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Nov 6, 2024
Copy link

melvin-bot bot commented Nov 6, 2024

Triggered auto assignment to @isabelastisser (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.

@daledah
Copy link
Contributor

daledah commented Nov 6, 2024

Edited by proposal-police: This proposal was edited at 2024-11-06 18:38:37 UTC.

Proposal

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

Checkbox does not appear next to the categories in Categories RHP

What is the root cause of that problem?

We are not allowing multiple selection as it is a small screen and selectionMode is not enabled here

const canSelectMultiple = shouldUseNarrowLayout ? selectionMode?.isEnabled : true;

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

We should set canSelectMultiple= true for all case here

const canSelectMultiple = shouldUseNarrowLayout ? selectionMode?.isEnabled : true;

And we can apply this logic for all pages in workspace

What alternative solutions did you explore? (Optional)

@neonbhai
Copy link
Contributor

neonbhai commented Nov 7, 2024

Proposal

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

Checkbox does not appear next to the categories in Categories RHP

What is the root cause of that problem?

We don't allow selection mode to turn on when categories page is in the RHP as the check here is only for isSmallScreenWidth.

Hence selection is not possible.

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

We will use isInNarrowPaneModal from useResponsiveLayout to check if we are rendering in the RHP.

const {isSmallScreenWidth} = useResponsiveLayout();

Then add a prop allowSelectionModeInRHP to SelectionListWithModal here, to allow selectionMode in RHP.

if (!turnOnSelectionModeOnLongPress || !isSmallScreenWidth || item?.isDisabled || item?.isDisabledCheckbox || !isFocused) {

We will do other adjustments to logic as needed.

Alternatively

We can replace the isSmallScreenWidth with shouldUseNarrowLayout here if we want to allow selection Mode for all editable lists like these RHP. We will then not need to control this behavior with a prop.

@isabelastisser isabelastisser added 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 labels Nov 7, 2024
Copy link

melvin-bot bot commented Nov 7, 2024

Job added to Upwork: https://www.upwork.com/jobs/~021854581870980912212

@melvin-bot melvin-bot bot changed the title Categorize - Checkbox does not appear next to the categories in Categories RHP [$250] Categorize - Checkbox does not appear next to the categories in Categories RHP Nov 7, 2024
Copy link

melvin-bot bot commented Nov 7, 2024

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

@mananjadhav
Copy link
Collaborator

Will review the proposals.

@melvin-bot melvin-bot bot added the Overdue label Nov 11, 2024
Copy link
Contributor

Your proposal. will be dismissed because you did not follow the proposal template.

@Jaeta01
Copy link

Jaeta01 commented Nov 11, 2024

Proposal

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

Categorize - Checkbox does not appear next to the categories in Categories RHP

What is the root cause of that problem?

In this scenario, the shouldUseNarrowLayout condition is used to control the display of the checkbox. However, this can lead to issues in layout consistency, as the checkbox visibility is entirely dependent on this condition.

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

Update shouldUseNarrowLayout to isSmallScreenWidth

What alternative solutions did you explore? (Optional)

@isabelastisser
Copy link
Contributor

isabelastisser commented Nov 11, 2024

@mananjadhav, can you please review the proposals and provide an update? Thanks!

Copy link

melvin-bot bot commented Nov 11, 2024

@mananjadhav, @isabelastisser Whoops! This issue is 2 days overdue. Let's get this updated quick!

@mananjadhav
Copy link
Collaborator

Will provide an update in an hour.

@melvin-bot melvin-bot bot removed the Overdue label Nov 11, 2024
Copy link

melvin-bot bot commented Nov 14, 2024

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

@melvin-bot melvin-bot bot added the Overdue label Nov 14, 2024
@isabelastisser
Copy link
Contributor

Bump @mananjadhav for an update. Thanks!

Copy link

melvin-bot bot commented Nov 15, 2024

@mananjadhav, @isabelastisser Whoops! This issue is 2 days overdue. Let's get this updated quick!

@mananjadhav
Copy link
Collaborator

I think it makes sense to use shouldUseNarrowLayout for all selection lists. But would confirm with the internal engineer.

🎀 👀 🎀 C+ reviewed.

Copy link

melvin-bot bot commented Nov 16, 2024

Triggered auto assignment to @MonilBhavsar, see https://stackoverflow.com/c/expensify/questions/7972 for more details.

@MonilBhavsar
Copy link
Contributor

Okay pretty straightforward, but would be good to look into why we disallowed selection list initially for RHP. May be on purpose?

@mananjadhav
Copy link
Collaborator

@neonbhai Can you please share the ETA on the PR?

@neonbhai
Copy link
Contributor

neonbhai commented Nov 28, 2024

Working on the PR! raising by tonight

@melvin-bot melvin-bot bot added the Overdue label Nov 28, 2024
@mananjadhav
Copy link
Collaborator

PR will be raised soon and I'll review it then.

@neonbhai
Copy link
Contributor

neonbhai commented Dec 2, 2024

Looks like this will be the first time selection mode and long press UX will appear on web. Long pressing on an item is not a standard UX behavior for Web and maybe we should not introduce it 🤔

A similar list like Report Fields Values page shows checkbox instead of long press behavior in the RHP on web:

Report.Fields.Values.page.currently.mov

I think we should modify the categories page to mirror this behavior and also have checkboxes:

Screen.Recording.2024-12-02.at.5.45.23.AM.mov
Code changes
  • Using isSmallScreenWidth here and here.

  • passing isSmallScreenWidth here:

turnOnSelectionModeOnLongPress={isSmallScreenWidth}

cc: @mananjadhav @MonilBhavsar @shawnborton @dannymcclain

@melvin-bot melvin-bot bot added the Overdue label Dec 2, 2024
Copy link

melvin-bot bot commented Dec 2, 2024

@mananjadhav, @isabelastisser, @MonilBhavsar, @neonbhai Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@isabelastisser
Copy link
Contributor

@mananjadhav, can you please provide an update? Thanks!

@dannymcclain
Copy link
Contributor

Looks like this will be the first time selection mode and long press UX will appear on web. Long pressing on an item is not a standard UX behavior for Web and maybe we should not introduce it 🤔

Hmm, I agree. I don't think we should ever use long press on desktop. cc @Expensify/design for additional thoughts.

@shawnborton
Copy link
Contributor

Totally agree with that

@mananjadhav
Copy link
Collaborator

Agree with design input and @neonbhai's suggestion.

@melvin-bot melvin-bot bot removed the Overdue label Dec 2, 2024
@dubielzyk-expensify
Copy link
Contributor

Agree with @Expensify/design team

Copy link

melvin-bot bot commented Dec 4, 2024

@mananjadhav @isabelastisser @MonilBhavsar @neonbhai this issue is now 4 weeks old, please consider:

  • Finding a contributor to fix the bug
  • Closing the issue if BZ has been unable to add the issue to a VIP or Wave project
  • If you have any questions, don't hesitate to start a discussion in #expensify-open-source

Thanks!

@mananjadhav
Copy link
Collaborator

@neonbhai What's the ETA on the PR?

@neonbhai
Copy link
Contributor

neonbhai commented Dec 5, 2024

Facing issue with building on Android, finalizing soon!

@melvin-bot melvin-bot bot added Reviewing Has a PR in review Weekly KSv2 and removed Daily KSv2 labels Dec 5, 2024
@neonbhai
Copy link
Contributor

neonbhai commented Dec 7, 2024

The PR is ready for review!

cc: @mananjadhav

@isabelastisser
Copy link
Contributor

@mananjadhav, please provide an update. Thanks!

@mananjadhav
Copy link
Collaborator

@isabelastisser The PR has been deployed to production 14 hours ago. I think the automation failed to update the status.

@mananjadhav
Copy link
Collaborator

@isabelastisser This is ready for payout.

BugZero Checklist:

  • [Contributor] Classify the bug:
Bug classification

Source of bug:

  • 1a. Result of the original design (eg. a case wasn't considered)
  • 1b. Mistake during implementation
  • 1c. Backend bug
  • 1z. Other:

Where bug was reported:

  • 2a. Reported on production (eg. bug slipped through the normal regression and PR testing process on staging)
  • 2b. Reported on staging (eg. found during regression or PR testing)
  • 2d. Reported on a PR
  • 2z. Other:

Who reported the bug:

  • 3a. Expensify user
  • 3b. Expensify employee
  • 3c. Contributor
  • 3d. QA
  • 3z. Other:
  • [Contributor] 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: NA. We didn't consider this case earlier.

  • [Contributor] If the regression was CRITICAL (e.g. interrupts a core flow) A discussion in #expensify-open-source 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:

  • [Contributor] If it was decided to create a regression test for the bug, please propose the regression test steps using the template below to ensure the same bug will not reach production again.

I don't think we need regression test for this one.

@isabelastisser
Copy link
Contributor

Payment summary:

Contributor: @neonbhai paid $125 via Upwork
Contributor+: @mananjadhav owed $125 via NewDot PENDING

@isabelastisser
Copy link
Contributor

all set!

@github-project-automation github-project-automation bot moved this from Bugs and Follow Up Issues to Done in [#whatsnext] #expense Jan 6, 2025
@garrettmknight
Copy link
Contributor

$125 approved for @mananjadhav

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. External Added to denote the issue can be worked on by a contributor Reviewing Has a PR in review Weekly KSv2
Projects
Status: Done
Development

No branches or pull requests