Expensify / App

Welcome to New Expensify: a complete re-imagination of financial collaboration, centered around chat. Help us build the next generation of Expensify by sharing feedback and contributing to the code.
https://new.expensify.com
MIT License
3.31k stars 2.74k forks source link

[HOLD for payment 2024-08-09] [$250] Remove checkboxes from table rows and implement selection mode on mobile devices #45451

Closed shawnborton closed 1 month ago

shawnborton commented 1 month ago

Now that we've successfully implemented selection mode for the Search page, we'd like to reuse this same UX for all table rows that can be found on mobile. In order to do this, we will want to remove the checkboxes from all mobile tables and implement the same long-press to enable selection mode.

CleanShot 2024-07-16 at 08 55 11@2x

Here's a running list of the tables we'd want to update on mobile:

Note that for #rooms, we first need to update the members list to look more like the table style found in Groups first, and then we should make this change. We can handle that separately.

cc @Expensify/design @trjExpensify - can you think of anymore places?

Also cc @filip-solecki in case you want to take this one as a follow up. Thanks!

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01832a2280e70e929a
  • Upwork Job ID: 1813142852772967992
  • Last Price Increase: 2024-07-16
Issue OwnerCurrent Issue Owner: @trjExpensify
filip-solecki commented 1 month ago

Sure, I can take it!

trjExpensify commented 1 month ago

List looks good to me!

shawnborton commented 1 month ago

Awesome, thanks Filip!

trjExpensify commented 1 month ago

I'll assign and be the BZ on this one.

melvin-bot[bot] commented 1 month ago

Current assignee @trjExpensify is eligible for the NewFeature assigner, not assigning anyone new.

melvin-bot[bot] commented 1 month ago

:warning: It looks like this issue is labelled as a New Feature but not tied to any GitHub Project. Keep in mind that all new features should be tied to GitHub Projects in order to properly track external CAP software time :warning:

melvin-bot[bot] commented 1 month ago

Triggered auto assignment to Design team member for new feature review - @shawnborton (NewFeature)

melvin-bot[bot] commented 1 month ago

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

melvin-bot[bot] commented 1 month ago

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

trjExpensify commented 1 month ago

Added External to get a C+ assigned for the PR review, removed Help wanted as we don't need contributor proposals for this job. 👍

melvin-bot[bot] commented 1 month ago

@shawnborton, @trjExpensify, @ikevin127, @filip-solecki Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

trjExpensify commented 1 month ago

Filip, you're still going to take this one right?

filip-solecki commented 1 month ago

Yes, I am going to work on this on Monday

ikevin127 commented 1 month ago

Not overdue, we're currently on track with starting work on this new feature as per the comment above.

trjExpensify commented 1 month ago

Yes, I am going to work on this on Monday

Great stuff, thanks Filip!

ikevin127 commented 1 month ago

Not overdue, we're currently on track with starting work on this new feature as per https://github.com/Expensify/App/issues/45451#issuecomment-2240915521.

filip-solecki commented 1 month ago

Can anyone confirm if I can access this page by:

  1. Start new chat button
  2. Add a few people
  3. Go to details
  4. Go to members

Or should I create it using #rooms tab? cc @shawnborton @trjExpensify

shawnborton commented 1 month ago

In that particular example, we're talking about when you make a chat with multiple people (not a #room).

So you are correct in your steps you laid out.

filip-solecki commented 1 month ago

Ok, thanks, draft PR is almost finished, I'll open it tomorrow morning and it'll include all listed pages 🚀

melvin-bot[bot] commented 1 month ago

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

melvin-bot[bot] commented 1 month ago

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

melvin-bot[bot] commented 1 month ago

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

melvin-bot[bot] commented 1 month ago

⚠️ Looks like this issue was linked to a Deploy Blocker here

If you are the assigned CME please investigate whether the linked PR caused a regression and leave a comment with the results.

If a regression has occurred and you are the assigned CM follow the instructions here.

If this regression could have been avoided please consider also proposing a recommendation to the PR checklist so that we can avoid it in the future.

melvin-bot[bot] commented 1 month ago

Reviewing label has been removed, please complete the "BugZero Checklist".

melvin-bot[bot] commented 1 month ago

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

If no regressions arise, payment will be issued on 2024-08-09. :confetti_ball:

For reference, here are some details about the assignees on this issue:

melvin-bot[bot] commented 1 month ago

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

ikevin127 commented 1 month ago

NewFeature

Regression Test Proposal

Note: This new feature is only visible / testable in narrow layout devices on the following platforms:

Tests

1. Workspace - Members 1. Log in to the app. 2. Go to existing Workspace or create a new one. 3. Go to Members (as an admin). 4. Add a few members if you are alone. 5. Long press on any member. 6. Choose "Select" . 7. Select and unselect options and test some bulk action.
2. Workspace Distance Rates 1. Log in to the app. 2. Go to existing Workspace or create a new one. 3. Go to Distance Rates (as an admin). 4. Enable Distance Rates in `More features` if not already enabled. 5. Add a few distance rates if there is only one rate. 6. Long press on any distance rate. 7. Choose "Select". 8. Select and unselect options and test some bulk action.
3. Workspace Categories 1. Log in to the app. 2. Go to existing Workspace or create a new one. 3. Go to Categories (as an admin). 4. Enable Categories in `More features` if not already enabled. 5. Long press on any category. 6. Choose "Select". 7. Select and unselect options and test some bulk action.
4. Workspace multi level Tags 1. Log in to OD. 2. Go to Workspace settings. 3. Go to Tags and enable it if not already enabled. 4. Enable `People must tag expenses` and `Use multiple level of tags`. 5. Import some multi level Tags (eg. [this](https://github.com/Expensify/App/files/15195760/Independent%2Bwithout%2BGL%2Bcodes%2Bformat.csv) ). 6. Go to ND. 7. Go to the same Workspace and Tags page. 8. You should not be able to select any Tag on the main page. 9. Go to Tag details. 10. You will see Tags inside. 11. Long press on any tag. 12. Choose "Select". 13. Select and unselect options and test some bulk action.
5. Workspace single level Tags 1. Log in to the app. 2. Go to existing Workspace or create a new one. 3. Go to Tags (as an admin). 4. Enable Tags in `More features` if not already enabled. 5. Add a few Tags. 6. Long press on any tag. 7. Choose "Select". 8. Select and unselect options and test some bulk action.
6. Workspace Taxes 1. Log in to the app. 2. Go to existing Workspace or create a new one. 3. Go to Taxes (as an admin). 4. Enable Taxes in `More features` if not already enabled. 5. Add a few tax rates 6. Long press on any tax rate. 7. Choose "Select". 8. Select and unselect options and test some bulk action.
7. Workspace Report Fields Precondition: Access to the Report Fields feature. 1. Log in to the app. 2. Go to existing Workspace or create a new one. 3. Go to Report Fields (as an admin). 4. Enable Report Fields in `More features` if not already enabled. 5. Add a few items. 6. Long press on any report field. 7. Chose "Select". 8. Select and unselect options and test some bulk action.
8. Workspace Report Fields - Add list type report 1. Log in to the app, 2. Go to existing Workspace or create a new one. 3. Go to Report Fields (as an admin). 4. Enable Report Fields in `More features` if not already enabled. 5. Click "Add field". 6. Fill required fields. 7. Choose "List" type. 8. Choose "List values" . 9. Add a few values. 10. Long press on any of the added values. 11. Choose "Select". 12. Select and unselect options and test some bulk action.
9. Group chat -> Members 1. Log in to the app. 2. Go to existing group chat (if you don't have any go to point 3 otherwise go to point 6). 3. Click `+` button. 4. Choose `Start chat`. 5. Add a few people to the chat. 6. Go to chat details. 7. Go to members. 8. Long press on any member. 9. Choose "Select". 10. Select and unselect options and test some bulk action.
10. Search 1. Log in to the app (use account with existing transactions or create a several new transactions). 2. Go to Search Tab (from bottom tab). 4. Long press any transaction. 5. Choose "Select" option. 6. Select and unselect options and do some bulk action.

Do we agree 👍 or 👎.

rezkiy37 commented 1 month ago

There is a bug. Please take a look - https://github.com/Expensify/App/pull/46096#issuecomment-2273409940.

jasperhuangg commented 1 month ago

@rezkiy37 Thanks! That'll get handled in the fix PR https://github.com/Expensify/App/pull/46698

ikevin127 commented 1 month ago

cc @trjExpensify For payment, in case this fell off your radar.

Note: There were regressions with this one, so payment should be halved, @jasperhuangg to confirm!

melvin-bot[bot] commented 1 month ago

Payment Summary

Upwork Job

BugZero Checklist (@trjExpensify)

trjExpensify commented 1 month ago

Yep! Payment summary as follows:

Regression tests for the Search project will be handled centrally. Offer sent.

ikevin127 commented 1 month ago

@trjExpensify Offer accepted, thank you!

trjExpensify commented 1 month ago

Paid, closing!