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

[HOLD for payment 2023-06-28] [HOLD for payment 2023-06-23] [$1000] Cursor does not change to I beam on selecting mentions like it does for other clickable links #19303

Closed
2 of 6 tasks
kavimuru opened this issue May 19, 2023 · 56 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

@kavimuru
Copy link

kavimuru commented May 19, 2023

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 the app
  2. Open any report
  3. Send message with mention
  4. Click and drag to highlight the message containing the message and observe that cursor remains pointer while highlighting and does not change to I beam

Expected Result:

App should change the cursor to I beam while highlighting the mentions part in message as it normally does for email, links etc

Actual Result:

App keeps the cursor as pointer and does not change to I beam while selecting mentions part in message

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.3.16-5
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

cursor.not.change.to.I.beam.for.mentions.mp4
Recording.658.mp4

Expensify/Expensify Issue URL:
Issue reported by: @dhanashree-sawant
Slack conversation: https://expensify.slack.com/archives/C049HHMV9SM/p1684312696564409

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~017477dd353ae7b577
  • Upwork Job ID: 1664022662379630592
  • Last Price Increase: 2023-06-07
@kavimuru kavimuru added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels May 19, 2023
@melvin-bot
Copy link

melvin-bot bot commented May 19, 2023

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

@melvin-bot
Copy link

melvin-bot bot commented May 19, 2023

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

@strepanier03
Copy link
Contributor

I am testing this and the mentions as well as other clickable links, like embedded URLs are all the point, not the I beam.

I believe it should be the point because it's clickable whereas the I beam indicates text and typing.

@kavimuru - Can you weigh in here. I'm not sure about moving this one forward.

@melvin-bot melvin-bot bot added the Overdue label May 22, 2023
@melvin-bot
Copy link

melvin-bot bot commented May 22, 2023

@strepanier03 Uh oh! This issue is overdue by 2 days. Don't forget to update your issues!

@strepanier03
Copy link
Contributor

@dhanashree-sawant - I have question about your repro steps. In step 4 you say "Select the mention message and observe that cursor remains pointer while selecting and does not change to I beam".

By "select" do you mean open up the sent message to editing and then clicking on the mention?

The reason I ask is because the pointer makes sense to me because the mention is clickable, just like other links.

If I hyperlink a URL, it should be a pointer because it's clickable, same with the mention.

Can you help me understand why it should be an I beam if it's clickable?

@melvin-bot melvin-bot bot removed the Overdue label May 22, 2023
@strepanier03 strepanier03 added the Needs Reproduction Reproducible steps needed label May 23, 2023
@dhanashree-sawant
Copy link

Hi @strepanier03, if you see email, URL, they are all clickable but when we select by dragging over them, cursor changes to I beam, if we want to keep the cursor as pointer while drag and select, we should do that too on email and URL to maintain consistency.

@strepanier03
Copy link
Contributor

strepanier03 commented May 31, 2023

Aaah, I think I didn't understand that "select" meant to drag over the message, not click (select) on them. I'll go through it again and update the OP comment with the clarification.

@strepanier03 strepanier03 reopened this May 31, 2023
@strepanier03 strepanier03 added External Added to denote the issue can be worked on by a contributor and removed Needs Reproduction Reproducible steps needed labels May 31, 2023
@melvin-bot melvin-bot bot changed the title Cursor does not change to I beam on selecting mentions like it does for other clickable links [$1000] Cursor does not change to I beam on selecting mentions like it does for other clickable links May 31, 2023
@melvin-bot
Copy link

melvin-bot bot commented May 31, 2023

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

@melvin-bot
Copy link

melvin-bot bot commented May 31, 2023

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

@melvin-bot
Copy link

melvin-bot bot commented May 31, 2023

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

@melvin-bot melvin-bot bot added the Help Wanted Apply this label when an issue is open to proposals by contributors label May 31, 2023
@melvin-bot
Copy link

melvin-bot bot commented May 31, 2023

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

@strepanier03
Copy link
Contributor

Okay, I updated repro steps and confirmed following them repros the behavior for me.

I agree we should be consistent and highlighting a message should be I beam and not pointer.

@tienifr
Copy link
Contributor

tienifr commented Jun 1, 2023

Proposal

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

App keeps the cursor as pointer and does not change to I beam while selecting mentions part in message.

What is the root cause of that problem?

In web we only have the behavior of "cursor is different when text is being selected" for text inside <a> tag, with href attribute. That's why we can see the correct behavior for links, emails because they are in <a> tag, with href. The same can be observed for other texts in <a>, for example the text links in login page.

So the problem here is we're not using <a> for the mention-user comment type, but we're expecting it to have the behavior of <a> tag. It should indeed be in <a> tag since it's essentially a link to the user's profile details (Slack also does it too).

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

To fix this we simply need to make the Text here a TextLink, and add a proper href to it (the place in our site where we lead the user after they click the mention)

This is consistent with the @mention-user feature in Slack too.

Note: we don't need this for @here because @here currently doesn't link to anything and doesn't have the cursor: pointer

What alternative solutions did you explore? (Optional)

NA

@melvin-bot
Copy link

melvin-bot bot commented Jun 2, 2023

@eVoloshchak @strepanier03 @joelbettner 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!

@melvin-bot melvin-bot bot added the Overdue label Jun 5, 2023
@strepanier03
Copy link
Contributor

Little bump on the proposal @eVoloshchak, thank you 🙌

@melvin-bot
Copy link

melvin-bot bot commented Jun 21, 2023

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

  • [@eVoloshchak] The PR that introduced the bug has been identified. Link to the PR:
  • [@eVoloshchak] 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:
  • [@eVoloshchak] A discussion in #expensify-bugs 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:
  • [@eVoloshchak] Determine if we should create a regression test for this bug.
  • [@eVoloshchak] If we decide to create a regression test for the bug, please propose the regression test steps to ensure the same bug will not reach production again.
  • [@JmillsExpensify] Link the GH issue for creating/updating the regression test once above steps have been agreed upon:

@melvin-bot melvin-bot bot added Daily KSv2 Overdue and removed Weekly KSv2 labels Jun 22, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jun 27, 2023

@JmillsExpensify, @eVoloshchak, @joelbettner, @tienifr Eep! 4 days overdue now. Issues have feelings too...

@JmillsExpensify
Copy link

@eVoloshchak Do you mind getting us kicked off with the BZ checklist above ahead of kicking off payouts tomorrow?

@melvin-bot melvin-bot bot removed the Overdue label Jun 28, 2023
@JmillsExpensify
Copy link

In the meantime, let's get the payouts catalogued.

Upwork job is here. Can everyone send along proposals and I'll get the contract/payout covered.

@dhanashree-sawant
Copy link

Hi @JmillsExpensify, if possible, can you send me invite to the job?

@eVoloshchak
Copy link
Contributor

  • The PR that introduced the bug has been identified. Link to the PR: [No QA] create UserMentionRenderer for rendering mentions inside chat #18495

  • 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: https://github.com/Expensify/App/pull/18495/files#r1246716190

  • A discussion in #expensify-bugs 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: this is simply a visual bug, I don't think there are additional steps we could take

  • Determine if we should create a regression test for this bug.
    Is it easy to test for this bug? Yes
    Is the bug related to an important user flow? No
    Is it an impactful bug? No

    Bug has an extremely low impact, so I don't think a regression test is necessary here

@eVoloshchak
Copy link
Contributor

Contributor+: @eVoloshchak $1,000

@JmillsExpensify, this has caused two regressions, so my pay should be reduced to 25%.
Not sure what the rules concerning this for Contributors are

Upwork job is here. Can everyone send along proposals and I'll get the contract/payout covered.

Could you hold my payment till tomorrow, please?
I'll try to request the payment using NewDot instead of Upwork, need some additional setting up to do

@JmillsExpensify
Copy link

Could you hold my payment till tomorrow, please?
I'll try to request the payment using NewDot instead of Upwork, need some additional setting up to do

Ok that'd be great. Will hold.

@JmillsExpensify
Copy link

@JmillsExpensify, this has caused two regressions, so my pay should be reduced to 25%. Not sure what the rules concerning this for Contributors are

At the moment, the deduction applies to C+.

@JmillsExpensify
Copy link

Bug has an extremely low impact, so I don't think a regression test is necessary here

I also agree with this.

@JmillsExpensify
Copy link

Offers sent to contributor and issue reporter.

@dhanashree-sawant
Copy link

Thanks I have accepted the offer.

@melvin-bot melvin-bot bot added the Overdue label Jul 3, 2023
@melvin-bot
Copy link

melvin-bot bot commented Jul 4, 2023

@JmillsExpensify, @eVoloshchak, @joelbettner, @tienifr Huh... This is 4 days overdue. Who can take care of this?

@JmillsExpensify
Copy link

@eVoloshchak Did you request payment via New Expensify? Everyone else has been paid out at this point.

@melvin-bot melvin-bot bot removed the Overdue label Jul 5, 2023
@eVoloshchak

This comment was marked as duplicate.

@eVoloshchak

This comment was marked as duplicate.

@melvin-bot melvin-bot bot added the Overdue label Jul 7, 2023
@eVoloshchak
Copy link
Contributor

@JmillsExpensify, this has been paid out and can be closed

@melvin-bot melvin-bot bot added Overdue and removed Overdue labels Jul 10, 2023
@joelbettner
Copy link
Contributor

I'm going to close this issue.

@melvin-bot melvin-bot bot removed the Overdue label Jul 12, 2023
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
None yet
Development

No branches or pull requests

7 participants