Details
-
Bug
-
Resolution: Fixed
-
P1: Critical
-
6.6
-
None
-
51067d7be (dev), 0f33cadae (6.7)
Description
We noticed that since porting to Qt6 KDE Plasma's emoji picker application has significant slowdowns. Switching between different emoji category pages takes several seconds instead of being instant. See https://bugs.kde.org/show_bug.cgi?id=478379
Profiling indicates that QtQuick's text handling is the bottleneck.
I reduced the application to a minimal version that loads all emojis from data files and displays them in a GridView: https://invent.kde.org/nicolasfella/emojipicker
After clicking the "Load button" it takes several seconds for the emojis to appear.
In Qt 5.15 this happens almost instantly. When running the app with Qt6 and QT_QUICK_BACKEND=software it also happens instantly.
Removing the `font.family: 'emoji'` from the delegate also makes it appear instantly, but the emojis will be black/white instead of colorful (https://bugreports.qt.io/browse/QTBUG-85744)
Tested with Qt 6.6, but I remember older versions of Qt6 being affected too
Attachments
For Gerrit Dashboard: QTBUG-120007 | ||||||
---|---|---|---|---|---|---|
# | Subject | Branch | Project | Status | CR | V |
528884,16 | QSGRhiTextureGlyphCache: Optimize prepareGlyphImage | dev | qt/qtdeclarative | Status: MERGED | +2 | 0 |
528889,1 | QImageTextureGlyphCache: Avoid deep copy during fillTexture | dev | qt/qtbase | Status: ABANDONED | -1 | 0 |
544334,2 | QSGRhiTextureGlyphCache: Optimize prepareGlyphImage | 6.7 | qt/qtdeclarative | Status: MERGED | +2 | 0 |
544399,1 | QSGRhiTextureGlyphCache: Optimize prepareGlyphImage | 6.6 | qt/qtdeclarative | Status: ABANDONED | 0 | 0 |