Skip to content

Flag emojis for England, Scotland, and Wales get turned into black flags #22196

@duxovni

Description

@duxovni

Steps to reproduce

  1. Start composing a message
  2. Open the emoji picker
  3. Go to the very end of the flags section, where 🏴󠁧󠁢󠁥󠁮󠁧󠁿 🏴󠁧󠁢󠁳󠁣󠁴󠁿 🏴󠁧󠁢󠁷󠁬󠁳󠁿 are
  4. Click one of those emojis

Alternatively:

  1. Start composing a message
  2. Paste in a 🏴󠁧󠁢󠁥󠁮󠁧󠁿, 🏴󠁧󠁢󠁳󠁣󠁴󠁿, or 🏴󠁧󠁢󠁷󠁬󠁳󠁿 emoji from the clipboard

Outcome

What did you expect?

The emoji are displayed properly in the message composer and in the timeline.

What happened instead?

All three of these emoji appear as black flags in the message composer and in the timeline after sending.

It still takes 7 backspace keystrokes to delete them in the composer, which suggests that all of the unicode codepoints are still present, but for some reason only the initial U+1F3F4 Black Flag is displayed, and the remaining codepoints are hidden rather than being combined into the flag properly. The emoji also display properly in "View Source".

I've reproduced this behavior on

  • develop.element.io in Firefox
  • Element Desktop 1.10.11 on NixOS Unstable
  • Element Desktop 1.10.12 on Arch Linux

My guess is this is an unrelated issue from #16884:

  • This is reproducible across platforms and between browser/desktop, while the trans flag is only broken in Arch Linux's Element Desktop package
  • The 🏴󠁧󠁢󠁥󠁮󠁧󠁿 🏴󠁧󠁢󠁳󠁣󠁴󠁿 🏴󠁧󠁢󠁷󠁬󠁳󠁿 emojis display properly in the emoji picker and in View Source, whereas the trans flag in Arch Desktop is broken into its constituent glyphs everywhere.
  • As mentioned, these emoji take 7 backspace keystrokes to delete because the joiner characters aren't being combined properly. The broken trans flag still only takes one keystroke to delete, which suggests it's more an issue around fonts/display.

Operating system

No response

Browser information

No response

URL for webapp

No response

Application version

No response

Homeserver

No response

Will you send logs?

No

Metadata

Metadata

Assignees

Labels

A-ComposerA-EmojiA-TimelineO-OccasionalAffects or can be seen by some users regularly or most users rarelyS-MinorImpairs non-critical functionality or suitable workarounds existT-Defect

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions