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

[Due for payment 2025-02-13] [$250] Clicking on the trip preview component doesn’t open the preview #55913

Closed
1 of 8 tasks
m-natarajan opened this issue Jan 29, 2025 · 17 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 External Added to denote the issue can be worked on by a contributor

Comments

@m-natarajan
Copy link

m-natarajan commented Jan 29, 2025

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.90-3
Reproducible in staging?: y
Reproducible in production?: y
If this was caught on HybridApp, is this reproducible on New Expensify Standalone?:
If this was caught during regression testing, add the test name, ID and link from TestRail:
Email or phone of affected tester (no customers):
Logs: https://stackoverflow.com/c/expensify/questions/4856
Expensify/Expensify Issue URL:
Issue reported by: @JmillsExpensify
Slack conversation (hyperlinked to channel name): travel

Action Performed:

  1. Book a trip
  2. Open the report
  3. Click anywhere in the preview

Expected Result:

Should be able to click anywhere in the preview and the trip should open

Actual Result:

Only view trip is clickable

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
Recording.930.mp4

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~021884427491006189587
  • Upwork Job ID: 1884427491006189587
  • Last Price Increase: 2025-01-29
  • Automatic offers:
    • shubham1206agra | Reviewer | 105904280
Issue OwnerCurrent Issue Owner: @shubham1206agra
@m-natarajan m-natarajan added Bug Something is broken. Auto assigns a BugZero manager. Daily KSv2 labels Jan 29, 2025
Copy link

melvin-bot bot commented Jan 29, 2025

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

@Shahidullah-Muffakir
Copy link
Contributor

Shahidullah-Muffakir commented Jan 29, 2025

🚨 Edited by proposal-police: This proposal was edited at 2025-01-29 02:44:25 UTC.

Proposal

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

When users click on a trip preview, nothing happens. Only the "View Trip" button is clickable, but users expect the entire preview to be clickable.

What is the root cause of that problem?

  1. The click handler (onPress) that opens the trip details is only present on the "View Trip" button.
    onPress={() => Navigation.navigate(ROUTES.REPORT_WITH_ID.getRoute(chatReportID))}
  2. The PressableWithoutFeedback component doesn't have the onPress prop and displays a default cursor, making it appear non-interactive.
    <PressableWithoutFeedback
    onPressIn={() => canUseTouchScreen() && ControlSelection.block()}
    onPressOut={() => ControlSelection.unblock()}
    onLongPress={(event) => showContextMenuForReport(event, contextMenuAnchor, chatReportID, action, checkIfContextMenuActive)}
    shouldUseHapticsOnLongPress
    style={[styles.flexRow, styles.justifyContentBetween, styles.reportPreviewBox, styles.cursorDefault]}
    role={CONST.ROLE.BUTTON}
    accessibilityLabel={translate('iou.viewDetails')}
    >

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

  1. Add the onPress prop to the PressableWithoutFeedback,
onPress={() => Navigation.navigate(ROUTES.REPORT_WITH_ID.getRoute(chatReportID))}
  1. Remove styles.cursorDefault from the style to show the pointer cursor on hover:
    style={[styles.flexRow, styles.justifyContentBetween, styles.reportPreviewBox, styles.cursorDefault]}

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

We can add a unit test to check that the PressableWithoutFeedback component in TripRoomPreview always has the onPress prop( simulate a press event and verify that Navigation.navigate is called with the correct route) and cursor behavior to ensure the pointer cursor is applied correctly.

What alternative solutions did you explore? (Optional)

@maddylewis maddylewis added the External Added to denote the issue can be worked on by a contributor label Jan 29, 2025
@melvin-bot melvin-bot bot changed the title Clicking on the trip preview component doesn’t open the preview [$250] Clicking on the trip preview component doesn’t open the preview Jan 29, 2025
Copy link

melvin-bot bot commented Jan 29, 2025

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

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label Jan 29, 2025
Copy link

melvin-bot bot commented Jan 29, 2025

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

@truph01
Copy link
Contributor

truph01 commented Jan 29, 2025

Proposal

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

  • Only view trip is clickable

What is the root cause of that problem?

<PressableWithoutFeedback
onPress={openReportFromPreview}

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

                <PressableWithoutFeedback
                    onPress={() => Navigation.navigate(ROUTES.REPORT_WITH_ID.getRoute(chatReportID))}
                    style={[styles.flexRow, styles.justifyContentBetween, styles.reportPreviewBox]}

and remove:

<Button
success
text={translate('travel.viewTrip')}
onPress={() => Navigation.navigate(ROUTES.REPORT_WITH_ID.getRoute(chatReportID))}
/>

since it is redundant.

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

  • This is UI feature request issue, so we don't need test.

What alternative solutions did you explore? (Optional)

@blazejkustra
Copy link
Contributor

Hey! I’m Błażej Kustra from Software Mansion, an expert agency, recently I've been working on all travel related issues with @shubham1206agra as a C+ as we both have access to travel workspaces.

@melvin-bot melvin-bot bot removed the Help Wanted Apply this label when an issue is open to proposals by contributors label Jan 29, 2025
Copy link

melvin-bot bot commented Jan 29, 2025

📣 @shubham1206agra 🎉 An offer has been automatically sent to your Upwork account for the Reviewer role 🎉 Thanks for contributing to the Expensify app!

Offer link
Upwork job

@cristipaval
Copy link
Contributor

you're all set, @blazejkustra and @shubham1206agra! Thanks for jumping into it!

@blazejkustra
Copy link
Contributor

PR is up!

@stitesExpensify stitesExpensify moved this to Low in #Travel Jan 29, 2025
@stitesExpensify stitesExpensify self-assigned this Jan 30, 2025
@melvin-bot melvin-bot bot added Weekly KSv2 and removed Weekly KSv2 labels Feb 6, 2025
@melvin-bot melvin-bot bot added the Awaiting Payment Auto-added when associated PR is deployed to production label Feb 6, 2025
@melvin-bot melvin-bot bot changed the title [$250] Clicking on the trip preview component doesn’t open the preview [Due for payment 2025-02-13] [$250] Clicking on the trip preview component doesn’t open the preview Feb 6, 2025
Copy link

melvin-bot bot commented Feb 6, 2025

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

@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Feb 6, 2025
Copy link

melvin-bot bot commented Feb 6, 2025

The solution for this issue has been 🚀 deployed to production 🚀 in version 9.0.94-25 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 2025-02-13. 🎊

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

Copy link

melvin-bot bot commented Feb 6, 2025

@shubham1206agra @maddylewis @shubham1206agra The PR fixing this issue has been merged! The following checklist (instructions) will need to be completed before the issue can be closed. Please copy/paste the BugZero Checklist from here into a new comment on this GH and complete it. If you have the K2 extension, you can simply click: [this button]

Copy link

melvin-bot bot commented Feb 12, 2025

@cristipaval @maddylewis @stitesExpensify @blazejkustra @shubham1206agra this issue was created 2 weeks ago. Are we close to approving a proposal? If not, what's blocking us from getting this issue assigned? Don't hesitate to create a thread in #expensify-open-source to align faster in real time. Thanks!

@maddylewis maddylewis added Daily KSv2 and removed Weekly KSv2 labels Feb 12, 2025
@maddylewis
Copy link
Contributor

switching to daily as payment is due tomorrow.

@shubham1206agra
Copy link
Contributor

shubham1206agra commented Feb 12, 2025

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: Design change

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 since this was a design change.

  • [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: Not Required

  • [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.

  • [BugZero Assignee] Create a GH issue for creating/updating the regression test once above steps have been agreed upon.

    Link to issue: https://github.com/Expensify/Expensify/issues/470328

Regression Test Proposal

Test:

  1. Create a trip with steps from this PR [vip-travel] Create Trip Details Screen #52823
  2. Open the report
  3. Click anywhere in the preview (verify that it opens the trip room)

Do we agree 👍 or 👎

@melvin-bot melvin-bot bot added Daily KSv2 and removed Daily KSv2 labels Feb 13, 2025
@maddylewis
Copy link
Contributor

maddylewis commented Feb 14, 2025

Offer pending in Upwork

Image

@shubham1206agra - will you confirm once you've accepted the offer in Upwork? thanks!


Once offer is accepted, this issue can be closed 👍

@shubham1206agra
Copy link
Contributor

@maddylewis Offer accepted

@github-project-automation github-project-automation bot moved this from Low to Done in #Travel Feb 14, 2025
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 External Added to denote the issue can be worked on by a contributor
Projects
Status: Done
Development

No branches or pull requests

9 participants