Skip to content

[HOLD for payment 2023-07-10] [$1000] Different sections opened clicking on empty space in thread header #21215

Closed

Description

@kavimuru

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. Open an existing chat
  2. Send message
  3. Reply with a thread
  4. Open the threaded chat
  5. Click on 'From user name' link
  6. Verify that user is navigated to the main chat
  7. Open the threaded chat again
  8. Click on the blank space next to the thread header name
  9. Obsereve that the details sidebar is opened
  10. Close the sidebar & click on a blank space next to 'From user name' link

Expected Result:

Details sidebar should be opened counting all the blank parts of the header as part of the header to avoid confusion. And clicking only the link should navigate user to main chat

Actual Result:

User is navigate back to main chat

Workaround:

Can the user still use Expensify without this being fixed? Have you informed them of the workaround?

Platforms:

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

  • Android / native
  • Android / Chrome
  • iOS / native
  • iOS / Safari
  • MacOS / Chrome / Safari
  • MacOS / Desktop

Version Number: 1.2.30-0
Reproducible in staging?: y
Reproducible in production?: y
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
Notes/Photos/Videos: Any additional supporting documentation
image (1)

2023-06-15.10.56.35.mp4
Recording.1046.mp4

Expensify/Expensify Issue URL:
Issue reported by: @Natnael-Guchima
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1686816426119499

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01e25a8a95ef65423b
  • Upwork Job ID: 1672116435942555648
  • Last Price Increase: 2023-06-23

Activity

  1. added
    BugSomething is broken. Auto assigns a BugZero manager.
    on Jun 21, 2023
  2. melvin-bot commented on Jun 21, 2023

    @melvin-bot

    Triggered auto assignment to @sophiepintoraetz (Bug), see https://stackoverflow.com/c/expensify/questions/14418 for more details.

  3. melvin-bot commented on Jun 21, 2023

    @melvin-bot

    Bug0 Triage Checklist (Main S/O)

    • This "bug" occurs on a supported platform (ensure Platforms in OP are ✅)
    • This bug is not a duplicate report (check E/App issues and #expensify-bugs)
      • If it is, comment with a link to the original report, close the issue and add any novel details to the original issue instead
    • This bug is reproducible using the reproduction steps in the OP. S/O
      • If the reproduction steps are clear and you're unable to reproduce the bug, check with the reporter and QA first, then close the issue.
      • If the reproduction steps aren't clear and you determine the correct steps, please update the OP.
    • This issue is filled out as thoroughly and clearly as possible
      • Pay special attention to the title, results, platforms where the bug occurs, and if the bug happens on staging/production.
    • I have reviewed and subscribed to the linked Slack conversation to ensure Slack/Github stay in sync
  4. Nikhil-Vats commented on Jun 21, 2023

    @Nikhil-Vats
    Contributor

    Proposal

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

    Different sections open when user clicks on empty space in thread header. When space next to parent chat is clicked, it opens the parent chat and not chat details.

    What is the root cause of that problem?

    Subtitle expands to full width here because of flex: 1 which is set on its parent.

    <View style={[styles.flex1, styles.flexColumn]}>
    <DisplayNames
    fullTitle={title}
    displayNamesWithTooltips={displayNamesWithTooltips}
    tooltipEnabled
    numberOfLines={1}
    textStyles={[styles.headerText, styles.pre]}
    shouldUseFullTitle={isChatRoom || isPolicyExpenseChat || isThread || isTaskReport}
    />
    {(isChatRoom || isPolicyExpenseChat || isThread) && !_.isEmpty(subtitle) && (
    <>
    {isThread ? (
    <PressableWithoutFeedback
    onPress={() => {
    Navigation.navigate(ROUTES.getReportRoute(props.report.parentReportID));
    }}
    accessibilityLabel={subtitle}
    accessibilityRole="link"
    >

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

    If we just remove styles.flex1 or only flex-grow: 1 then parent chat won't be truncated on phone.
    If we add styles.alignSelfStart on View or PressableWithoutFeedback then also parent chat won't be truncated on phone.

    See video
    Screen.Recording.2023-06-23.at.3.44.46.PM.mov

    We need to add new property in sizing.js for max-width either set to max-content or fit-content and then pass this style in PressableWithoutFeedback like -
    Add new style prop to -

    <PressableWithoutFeedback
        ...
        style={[styles.mwFitContent]}

    We can use fit-content since it calculates the value based on available space like -

    fit-content uses max-content, unless available < max-content, then it uses available. Unless available < min-content, then it uses min-content.

    What alternative solutions did you explore? (Optional)

    NA

    Result -

    Screen.Recording.2023-06-23.at.3.46.01.PM.mov
  5. Pujan92 commented on Jun 21, 2023

    @Pujan92
    Contributor

    Proposal

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

    Different sections opened clicking on empty space in thread header

    What is the root cause of that problem?

    By default the align-items is stretch which will makes the subtitle to takes full available width and that is the reason for the issue.

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

    Pass style prop here for PressableWithoutFeedback with style={styles.alignSelfStart} which will restrict the stretching and takes only required width. To avoid the overflow when the text is longer we need to also provide styles.mw100.

    <PressableWithoutFeedback
    onPress={() => {
    Navigation.navigate(ROUTES.getReportRoute(props.report.parentReportID));
    }}
    accessibilityLabel={subtitle}
    accessibilityRole="link"
    >

  6. sophiepintoraetz commented on Jun 22, 2023

    @sophiepintoraetz
    Contributor

    Will look into this tomorrow - overrun with some other chores.

  7. sophiepintoraetz commented on Jun 23, 2023

    @sophiepintoraetz
    Contributor

    I can replicate - I think this may have come from PR #20484 (cc @chiragsalian)

    2023-06-23_17-32-09 (1)

  8. added
    ExternalAdded to denote the issue can be worked on by a contributor
    on Jun 23, 2023
  9. changed the title [-]Different sections opened clicking on empty space in thread header[/-] [+][$1000] Different sections opened clicking on empty space in thread header[/+] on Jun 23, 2023
  10. melvin-bot commented on Jun 23, 2023

    @melvin-bot
  11. added
    Help WantedApply this label when an issue is open to proposals by contributors
    on Jun 23, 2023
  12. melvin-bot commented on Jun 23, 2023

    @melvin-bot

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

  13. melvin-bot commented on Jun 23, 2023

    @melvin-bot

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

  14. 22 remaining items

  15. sophiepintoraetz commented on Jul 5, 2023

    @sophiepintoraetz
    Contributor

    @mananjadhav - if you can complete the checklist, that would be great!

  16. mananjadhav commented on Jul 6, 2023

    @mananjadhav
    Collaborator

    @sophiepintoraetz thanks for the bump, I'll finish this over the weekend.

  17. mananjadhav commented on Jul 10, 2023

    @mananjadhav
    Collaborator

    The offending PR is #20484. I've posted the comment in the PR. I think the issue occurred because we copy pasted the Text content, which didn't have the click behavior earlier.

    I don't see any action needed here. I also don't think we need a regression test here as it's not something that would change often. @MariaHCD wdyt?

  18. sophiepintoraetz commented on Jul 11, 2023

    @sophiepintoraetz
    Contributor

    Thanks @mananjadhav - I agree if it was lack of attention to detail, there's no update needed here. Thanks for posting the FYI - contracts are out!

  19. Pujan92 commented on Jul 11, 2023

    @Pujan92
    Contributor

    @sophiepintoraetz payment is yet to be received for the contract. Can you plz check once? Thanks!

  20. sophiepintoraetz commented on Jul 11, 2023

    @sophiepintoraetz
    Contributor

    @Pujan92 - some patience would be good here - payments are manually processed so I have to wait until you accept the offer in order to pay you - and there are other pieces of work I am doing!

  21. Pujan92 commented on Jul 11, 2023

    @Pujan92
    Contributor

    I actually accepted the offer earlier. Usually, GH issue gets closed after the payment so thought of putting a message here. Sorry but didn't mean to rush here for payment.

  22. mananjadhav commented on Jul 12, 2023

    @mananjadhav
    Collaborator

    @sophiepintoraetz I've requested the payout via NewDot.

    Thanks for the patience here @Pujan92. Have you accepted the offer and paid out now?

  23. sophiepintoraetz commented on Jul 12, 2023

    @sophiepintoraetz
    Contributor

    Yep, he should have been paid! And yes - I realise that change has just gone live, Anu should be taking care of that.

  24. mananjadhav commented on Jul 12, 2023

    @mananjadhav
    Collaborator

    Yes thats right. Thanks for your help here.

  25. Pujan92 commented on Jul 12, 2023

    @Pujan92
    Contributor

    Yes, I got paid. Thanks!

  26. anmurali commented on Jul 13, 2023

    @anmurali

    Paid Manan after confirming here.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Metadata

Labels

Awaiting PaymentAuto-added when associated PR is deployed to productionBugSomething is broken. Auto assigns a BugZero manager.DailyKSv2ExternalAdded to denote the issue can be worked on by a contributor

Type

No type

Projects

No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions