The Dbus backend for QSystemTrayIcon sends a pixmap with the correct sizes (22px and 64px) if HiDPI scaling is disabled. However, if AA_EnableHighDpiScaling is set, pixmaps are sent at 512px, regardless of the original icon size, resulting in large overhead. In my case, the icon is loaded from the platform's icon theme and is a 16 x 16 px SVG file.
On a related note, is it really necessary to send the pixmap over dbus if an icon is provided by the platform theme?
Edit: When loading the SVG from the platform theme with QIcon.fromTheme, it is returned with a single available size of 128. When loading it from the file path directly, availableSizes returns an empty list and the above problem no longer occurs.
|For Gerrit Dashboard: QTBUG-83806|
|314618,6||Avoid double pixel-ratio scaling of dbus tray icons||dev||qt/qtbase||Status: MERGED||+2||0|
|316596,5||Avoid double pixel-ratio scaling of dbus tray icons||5.15||qt/qtbase||Status: MERGED||-1||0|