Bug 1954359 - Many emoji don't show up in Qt apps because qt does not handle 'emoji' font family
Summary: Many emoji don't show up in Qt apps because qt does not handle 'emoji' font f...
Keywords:
Status: CLOSED ERRATA
Alias: None
Product: Fedora
Classification: Fedora
Component: qt6-qtbase
Version: 41
Hardware: All
OS: Linux
unspecified
medium
Target Milestone: ---
Assignee: Jan Grulich
QA Contact:
URL:
Whiteboard: https://discussion.fedoraproject.org/...
: 2129299 2173935 (view as bug list)
Depends On:
Blocks:
TreeView+ depends on / blocked
 
Reported: 2021-04-28 01:45 UTC by Nicholas van Oudtshoorn
Modified: 2024-12-20 13:39 UTC (History)
16 users (show)

Fixed In Version: qt6-qtbase-6.8.1-5.fc41 qt6-qtbase-6.8.1-7.fc41
Clone Of:
Environment:
Last Closed: 2024-12-14 01:41:29 UTC
Type: Bug
Embargoed:


Attachments (Terms of Use)
Draft patch to support the color emoji in Qt5 (3.01 KB, patch)
2023-10-24 06:31 UTC, Peng Wu
no flags Details | Diff


Links
System ID Private Priority Status Summary Last Updated
Fedora Pagure fedora-kde/SIG issue 194 0 None None None 2023-11-13 09:41:03 UTC
Qt Bug Tracker QTBUG-85744 0 P3: Somewhat important Open Emojis don't render as colour emojis, if the default font has black and white versions 2023-03-01 17:55:54 UTC
Red Hat Issue Tracker FC-800 0 None None None 2023-04-04 10:09:38 UTC

Description Nicholas van Oudtshoorn 2021-04-28 01:45:47 UTC
Description of problem:
With google-noto-emoji-color-fonts installed (and symbola, if that makes a difference) many emoji fonts don't show up in Qt applications. Those that do show up as lineart.

Applying the fontconfig found at https://gist.github.com/charveey/091b11ea554436d15c7fffcf01129a8a fixes the problem completely.

See upstream bug: https://bugs.kde.org/show_bug.cgi?id=436156

Version-Release number of selected component (if applicable):


How reproducible:


Steps to Reproduce:
1. In a KDE environment, open konsole.
2. Type:
notify-send "👍🏻"

3. A notification will appear, but it doesn't show a complex emoji - it just shows two empty boxes.
4. Create the 75-noto-color-emoji.conf config from the website listed above
3. Repeat step 2 above, and see that it now works.

Actual results:


Expected results:


Additional info:

Comment 1 Akira TAGOH 2021-04-28 10:57:41 UTC
I guess the problem here is that Qt doesn't take care of "emoji" well. it just looks working as /a fallback font/ for generic family names on what you believe as a solution. Noto Emoji fonts isn't a sans-serif, nor serif, nor monospace. adding substitution rule for them is completely wrong.

That would be a bug in Qt I'd say.

Comment 2 Nate Graham 2021-04-28 15:15:21 UTC
Apparently this is the Qt bug report about it: https://bugreports.qt.io/browse/QTBUG-80434

Comment 3 Peng Wu 2021-04-30 01:52:45 UTC
I think it is okay to add "Noto Color Emoji" to emoji family,
but may be not good to add "Noto Color Emoji" to sans/serif/monospace family.

This could be a bug in Qt.

Comment 4 Ben Cotton 2022-05-12 16:37:21 UTC
This message is a reminder that Fedora Linux 34 is nearing its end of life.
Fedora will stop maintaining and issuing updates for Fedora Linux 34 on 2022-06-07.
It is Fedora's policy to close all bug reports from releases that are no longer
maintained. At that time this bug will be closed as EOL if it remains open with a
'version' of '34'.

Package Maintainer: If you wish for this bug to remain open because you
plan to fix it in a currently maintained version, change the 'version' 
to a later Fedora Linux version.

Thank you for reporting this issue and we are sorry that we were not 
able to fix it before Fedora Linux 34 is end of life. If you would still like 
to see this bug fixed and are able to reproduce it against a later version 
of Fedora Linux, you are encouraged to change the 'version' to a later version
prior to this bug being closed.

Comment 5 Nate Graham 2022-05-12 17:13:05 UTC
Still an issue in Fedora 36.

See also https://pagure.io/fedora-kde/SIG/issue/194. We could maybe close that, or this, because I'm not sure it makes sense to have two reports for the same issue. There's a workaround/potential element of a fix listed on that page, too.

Comment 6 Ben Cotton 2022-06-08 00:56:48 UTC
Fedora Linux 34 entered end-of-life (EOL) status on 2022-06-07.

Fedora Linux 34 is no longer maintained, which means that it
will not receive any further security or bug fix updates. As a result we
are closing this bug.

If you can reproduce this bug against a currently maintained version of
Fedora please feel free to reopen this bug against that version. If you
are unable to reopen this bug, please file a new report against the
current release.

Thank you for reporting this bug and we are sorry it could not be fixed.

Comment 7 Adam Williamson 2023-03-01 17:46:05 UTC
*** Bug 2173935 has been marked as a duplicate of this bug. ***

Comment 8 Adam Williamson 2023-03-01 17:47:01 UTC
Still valid currently, per https://bugzilla.redhat.com/show_bug.cgi?id=2173935 .

Comment 9 Adam Williamson 2023-03-04 02:52:46 UTC
+3 in https://pagure.io/fedora-qa/blocker-review/issue/1060 , marking accepted Beta FE. But we only want a 'proper' fix, we tend to agree that the fontconfig hack is not the right way to do this.

Comment 10 marcdeop 2023-04-07 12:33:47 UTC
*** Bug 2129299 has been marked as a duplicate of this bug. ***

Comment 11 Peng Wu 2023-10-24 06:31:35 UTC
Created attachment 1995251 [details]
Draft patch to support the color emoji in Qt5

Comment 12 Peng Wu 2023-10-24 06:39:14 UTC
This patch will cache the emoji font family name in the QFontconfigDatabase,
and add the emoji font family name to the fallback font list.

This code is similar to the Windows emoji code in Qt5.

Comment 13 Fedora Update System 2023-11-07 12:40:11 UTC
FEDORA-2023-e430c01bb1 has been submitted as an update to Fedora 39. https://bodhi.fedoraproject.org/updates/FEDORA-2023-e430c01bb1

Comment 14 Fedora Update System 2023-11-07 12:40:12 UTC
FEDORA-2023-3d9c4cbdd1 has been submitted as an update to Fedora 38. https://bodhi.fedoraproject.org/updates/FEDORA-2023-3d9c4cbdd1

Comment 15 Jan Grulich 2023-11-07 15:02:41 UTC
(In reply to Peng Wu from comment #12)
> This patch will cache the emoji font family name in the QFontconfigDatabase,
> and add the emoji font family name to the fallback font list.
> 
> This code is similar to the Windows emoji code in Qt5.

Do you plan to submit your change to Qt upstream? We can carry the patch in Fedora, but it would be better to have it in upstream in the future.

Comment 16 Fedora Update System 2023-11-08 02:53:12 UTC
FEDORA-2023-3d9c4cbdd1 has been pushed to the Fedora 38 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-3d9c4cbdd1`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-3d9c4cbdd1

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 17 Fedora Update System 2023-11-08 02:58:09 UTC
FEDORA-2023-e430c01bb1 has been pushed to the Fedora 39 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2023-e430c01bb1`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2023-e430c01bb1

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 18 Peng Wu 2023-11-08 03:07:52 UTC
Okay, I will submit the change to Qt upstream for review.

Comment 19 Neal Gompa 2023-11-08 13:49:29 UTC
With the testing update, I see a small improvement. Black and white simple emoji all seem to work now. Color emoji fall back to black and white and complex emoji decompose (e.g. 🤷‍♂️ is black and white "shrug" + "male symbol" symbols).

It's not a complete fix, unfortunately.

Comment 20 Jan Grulich 2023-11-09 15:14:48 UTC
FYI the patch has been reverted in both Qt5 and Qt6 as people reported it completely broke their font rendering. We better backport it once it lands in upstream to be on the safe side.

Comment 21 Sammy 2023-11-09 23:58:38 UTC
I am seeing the same problem on fc38. Please see bug 
https://bugzilla.redhat.com/bugzilla/show_bug.cgi?id=2248773

It seems to happen on my laptop but not on my desktops (all running FC38 with all updates but having different graphics cards and processors). Downgrading to -3 solves the problem.

Comment 22 Peng Wu 2023-11-15 05:16:43 UTC
Sorry, just realized that my patch is wrong.

It seems Qt doesn't support the emoji sequence according to the comment in QTBUG-85744.

Comment 23 Jens Petersen 2024-03-28 10:54:22 UTC
This can probably moved to qt6, right?

Comment 24 Neal Gompa 2024-03-28 21:49:41 UTC
Yes. Since Qt5 is dead-ish now and KDE is on Qt6, we might as well.

Comment 25 Neal Gompa 2024-03-28 21:50:30 UTC
Dropping useless F38 FE tags.

Comment 26 Jens Petersen 2024-12-04 03:57:12 UTC
IIUC correctly this may be fixed now already in Qt 6.8.1 which is in Rawhide

Comment 27 Jan Grulich 2024-12-04 08:27:31 UTC
(In reply to Jens Petersen from comment #26)
> IIUC correctly this may be fixed now already in Qt 6.8.1 which is in Rawhide

Yes, it's not fixed in Qt 6.8.1 itself, but I backported the fix from Qt 6.9 while doing Qt 6.8.1 update.

Comment 28 Fedora Update System 2024-12-08 08:17:40 UTC
FEDORA-2024-0f34ea6c6c (dtk6core-6.0.24-1.fc41, dtk6gui-6.0.24-1.fc41, and 49 more) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-0f34ea6c6c

Comment 29 Fedora Update System 2024-12-10 02:02:31 UTC
FEDORA-2024-0f34ea6c6c has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-0f34ea6c6c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-0f34ea6c6c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 30 Fedora Update System 2024-12-11 01:41:55 UTC
FEDORA-2024-0f34ea6c6c has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-0f34ea6c6c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-0f34ea6c6c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 31 Fedora Update System 2024-12-12 02:40:14 UTC
FEDORA-2024-0f34ea6c6c has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-0f34ea6c6c`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-0f34ea6c6c

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 32 Fedora Update System 2024-12-14 01:41:29 UTC
FEDORA-2024-0f34ea6c6c (dtk6core-6.0.24-1.fc41, dtk6gui-6.0.24-1.fc41, and 55 more) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.

Comment 33 Fedora Update System 2024-12-16 15:37:06 UTC
FEDORA-2024-d3aaa76962 (qt6-qtbase-6.8.1-6.fc41, qt6-qtmultimedia-6.8.1-3.fc41, and 1 more) has been submitted as an update to Fedora 41.
https://bodhi.fedoraproject.org/updates/FEDORA-2024-d3aaa76962

Comment 34 Fedora Update System 2024-12-18 04:14:54 UTC
FEDORA-2024-d3aaa76962 has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-d3aaa76962`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-d3aaa76962

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 35 Fedora Update System 2024-12-19 03:56:28 UTC
FEDORA-2024-d3aaa76962 has been pushed to the Fedora 41 testing repository.
Soon you'll be able to install the update with the following command:
`sudo dnf upgrade --enablerepo=updates-testing --refresh --advisory=FEDORA-2024-d3aaa76962`
You can provide feedback for this update here: https://bodhi.fedoraproject.org/updates/FEDORA-2024-d3aaa76962

See also https://fedoraproject.org/wiki/QA:Updates_Testing for more information on how to test updates.

Comment 36 Jens Petersen 2024-12-19 13:18:53 UTC
(In reply to Jan Grulich from comment #27)
> Yes, it's not fixed in Qt 6.8.1 itself, but I backported the fix from Qt 6.9
> while doing Qt 6.8.1 update.

Thank you!

Comment 37 Jan Grulich 2024-12-19 14:21:33 UTC
Backports for this issue introduced another issue, which is also now present in Qt 6.9 upstream. There are missing country flag emojis in Keyboard KCM. 

Upstream issue: https://bugreports.qt.io/browse/QTBUG-132377

Comment 38 Fedora Update System 2024-12-20 13:39:01 UTC
FEDORA-2024-d3aaa76962 (qt6-qtbase-6.8.1-7.fc41, qt6-qtmultimedia-6.8.1-3.fc41, and 1 more) has been pushed to the Fedora 41 stable repository.
If problem still persists, please make note of it in this bug report.


Note You need to log in before you can comment on or make changes to this bug.