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-05-02] [$2000] Web - Chat - Some emoji's colors are overwritten #16018

Closed
2 of 6 tasks
kbecciv opened this issue Mar 15, 2023 · 70 comments
Closed
2 of 6 tasks
Assignees
Labels
Awaiting Payment Auto-added when associated PR is deployed to production Bug Something is broken. Auto assigns a BugZero manager. Engineering Internal Requires API changes or must be handled by Expensify staff Weekly KSv2

Comments

@kbecciv
Copy link

kbecciv commented Mar 15, 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!


Issue found when executing PR #15671

Action Performed:

  1. Go to URL https://staging.new.expensify.com/
  2. Login any account
  3. Go to any chat
  4. Send a message
  5. Put a black_medium_small_square reaction on the message
  6. Hover over reaction emoji

Expected Result:

The emoji displays as a black square

Actual Result:

The emoji is shown as a white square

Workaround:

Unknown

Platforms:

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

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

Version Number: 1.2. 85.1

Reproducible in staging?: Yes

Reproducible in production?: New feature

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

Recording.367.mp4

Untitled (3)

Expensify/Expensify Issue URL:

Issue reported by: Applause - Internal Team

Slack conversation:

View all open jobs on GitHub

Upwork Automation - Do Not Edit
  • Upwork Job URL: https://www.upwork.com/jobs/~01af7e16bfe1ac2f82
  • Upwork Job ID: 1638940320228810752
  • Last Price Increase: 2023-04-06
@kbecciv kbecciv added Daily KSv2 Bug Something is broken. Auto assigns a BugZero manager. labels Mar 15, 2023
@MelvinBot
Copy link

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

@melvin-bot melvin-bot bot locked and limited conversation to collaborators Mar 15, 2023
@MelvinBot
Copy link

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

@lschurr
Copy link
Contributor

lschurr commented Mar 16, 2023

Hm, I think I took the same steps and wasn't able to reproduce.

image

Adding Eng for more eyes.

@MelvinBot
Copy link

Triggered auto assignment to @alex-mechler (Engineering), see https://stackoverflow.com/c/expensify/questions/4319 for more details.

@alex-mechler
Copy link
Contributor

cc @stitesExpensify I think this is a missing emoji. I get the same thing on desktop
image

@melvin-bot melvin-bot bot added the Overdue label Mar 20, 2023
@lschurr
Copy link
Contributor

lschurr commented Mar 20, 2023

@alex-mechler - are we waiting for eyeballs from @stitesExpensify on this one?

@melvin-bot melvin-bot bot removed the Overdue label Mar 20, 2023
@alex-mechler
Copy link
Contributor

Correct, he was at ECX I believe last week, so I pinged him 1:1 to make sure this doesnt slip past him

@Expensify Expensify unlocked this conversation Mar 21, 2023
@melvin-bot melvin-bot bot added the Overdue label Mar 22, 2023
@stitesExpensify
Copy link
Contributor

Hm super weird, I'm not sure why this is happening. The emoji does actually exist

App/assets/emojis.js

Lines 16474 to 16481 in cec2481

name: 'black_medium_small_square',
code: '◾',
keywords: [
'black_medium_small_square',
'geometric',
'square',
],
},

it's supposed to be black though.. I think we can make this external if we want (or you can investigate more @alex-mechler whatever you're feeling 😄 )

@alex-mechler
Copy link
Contributor

Sounds good! Thanks for taking a look. Making this External

@melvin-bot melvin-bot bot removed the Overdue label Mar 23, 2023
@alex-mechler alex-mechler added the External Added to denote the issue can be worked on by a contributor label Mar 23, 2023
@melvin-bot melvin-bot bot changed the title Web - Chat - Some white emoji reaction are not showing in tooltips [$1000] Web - Chat - Some white emoji reaction are not showing in tooltips Mar 23, 2023
@MelvinBot
Copy link

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

@MelvinBot
Copy link

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

@MelvinBot
Copy link

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 Mar 23, 2023
@MelvinBot
Copy link

Current assignee @alex-mechler is eligible for the External assigner, not assigning anyone new.

@Karim-30
Copy link
Contributor

Proposal

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

Some emojis don't appear inside the Tooltip.

What is the root cause of that problem?

The background color of the View that wraps the emoji is the same color as the emoji. We need to change the background color to white as in Slack.

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

We need to create reactionEmojiTitleContainer style inside styles.js file.

    reactionEmojiTitleContainer: {
        backgroundColor: '#FFFFFF',
        borderRadius: variables.componentBorderRadiusSmall,
        ...spacing.ph2,
        ...spacing.pv1,
    },

and apply it to the emoji wrapper View inside ReactionTooltipContent.js file.

            <View style={[styles.flexRow, styles.reactionEmojiTitleContainer]}>
                {_.map(props.emojiCodes, emojiCode => (
                    <Text
                        key={emojiCode}
                        style={styles.reactionEmojiTitle}
                    >
                        {emojiCode}
                    </Text>
                ))}
            </View>

Since vertical padding has been added, I believe that removing this margin maybe add an aesthetic touch.

What alternative solutions did you explore? (Optional)

Result

Screen.Recording.2023-03-18.at.2.40.21.PM.mov

@melvin-bot melvin-bot bot added the Reviewing Has a PR in review label Apr 13, 2023
@alex-mechler alex-mechler removed the Reviewing Has a PR in review label Apr 14, 2023
@alex-mechler
Copy link
Contributor

@shawnborton Can you reach out to the creators of Expensify-Neue and Expensify-Mono? We need to have a few glyphs removed from the fonts, as they are causing issues with emoji rendering. Since we default to these fonts, we render these glyphs, with the color property being applied. This causes the emojis to have different representations than the name would imply. For example black_medium_small_square is rendered as white. I'm not sure we can do this on our own based on licensing.

For Expensify-Neue, the characters in range 25CF to 26AB are causing issues
image

For Expensify-Mon, the characters in range 25CF to 26AB are causing issues
image

@shawnborton shawnborton self-assigned this Apr 16, 2023
@shawnborton
Copy link
Contributor

Will send an email now!

@shawnborton
Copy link
Contributor

CoType responded and gave us some new font versions to try: Expensify Neue & Mono - web no geometric symbols.zip

Let me know how that goes and then we'll go from there.

@eVoloshchak
Copy link
Contributor

@shawnborton, I've tried the new fonts and it does resolve the issue!

Before:
image
After:
image

I also noticed that on the before image second emoji isn't centered, so that one was fixed too

@shawnborton
Copy link
Contributor

Amazing, that's great news!

@alex-mechler
Copy link
Contributor

Those worked great for web / desktop. We still need the .otfs to fix on mobile. I'll reply in the email thread to ask for them!

@alex-mechler
Copy link
Contributor

Working on mobile with updated otfs!
image

@melvin-bot melvin-bot bot added the Reviewing Has a PR in review label Apr 18, 2023
@alex-mechler
Copy link
Contributor

Did a quick peek into the font files again, didn't see any other glyphs we need to remove. PR is in review

@MonilBhavsar
Copy link
Contributor

Great work in figuring this out! 👏

@lschurr
Copy link
Contributor

lschurr commented Apr 19, 2023

@eVoloshchak will you apply for the job since you are reviewing the PR? https://www.upwork.com/jobs/~01af7e16bfe1ac2f82

@melvin-bot melvin-bot bot added Weekly KSv2 Awaiting Payment Auto-added when associated PR is deployed to production and removed Daily KSv2 labels Apr 25, 2023
@melvin-bot melvin-bot bot changed the title [$2000] Web - Chat - Some emoji's colors are overwritten [HOLD for payment 2023-05-02] [$2000] Web - Chat - Some emoji's colors are overwritten Apr 25, 2023
@melvin-bot melvin-bot bot removed the Reviewing Has a PR in review label Apr 25, 2023
@MelvinBot
Copy link

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

@MelvinBot
Copy link

MelvinBot commented Apr 25, 2023

The solution for this issue has been 🚀 deployed to production 🚀 in version 1.3.4-0 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 2023-05-02. 🎊

After the hold period is over and BZ checklist items are completed, please complete any of the applicable payments for this issue, and check them off once done.

  • External issue reporter - N/A
  • Contributor that fixed the issue - N/A
  • Contributor+ that helped on the issue and/or PR - @eVoloshchak

As a reminder, here are the bonuses/penalties that should be applied for any External issue:

  • Merged PR within 3 business days of assignment - 50% bonus
  • Merged PR more than 9 business days after assignment - 50% penalty

@MelvinBot
Copy link

MelvinBot commented Apr 25, 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:
  • [@lschurr] Determine if we should create a regression test for this bug. - no need
  • [@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. - N/A
  • [@lschurr] Link the GH issue for creating/updating the regression test once above steps have been agreed upon: N/A

@lschurr
Copy link
Contributor

lschurr commented Apr 25, 2023

@eVoloshchak @alex-mechler - Do we need a regression test for this one?

@eVoloshchak
Copy link
Contributor

Is it easy to test for this bug?

Yes

Is the bug related to an important user flow? (For example, adding a bank account)

No

Is it an impactful bug?

No

I personally think the regression test isn't needed here, since it has a very low impact on user experience.
Additionally, as long as we don't change the actual font files, it will not re-appear.

@eVoloshchak
Copy link
Contributor

@lschurr, I've accepted the job offer on Upwork, but I think the price is wrong. This was made Internal, the rate for reviewing internal PR's is 1K

@lschurr
Copy link
Contributor

lschurr commented Apr 25, 2023

Ah, thanks for calling that out @eVoloshchak - I'll modify when we pay on 5/2.

@lschurr
Copy link
Contributor

lschurr commented May 2, 2023

This is paid. Closing!

@lschurr lschurr closed this as completed May 2, 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. Engineering Internal Requires API changes or must be handled by Expensify staff Weekly KSv2
Projects
None yet
Development

No branches or pull requests