When an icon is missing (e.g. document-open), Qt first falls back to
splitting the name by dashes and taking the first part of it (document).
Only then it falls back to parent icon themes (Yaru → Humanity). So for
all document-* icons it uses document.png from MimeTypes context.

Doing it vice versa would fix the bug. However, the specification
explicitly tells us to behave as Qt currently does:
https://specifications.freedesktop.org/icon-naming-spec/icon-naming-
spec-latest.html#guidelines

> if the more specific item does not exist in the current theme, and
does exist in a parent theme, the generic icon from the current theme is
preferred, in order to keep consistent style.

Another potential fix would be ignoring the MimeTypes context. The
specification says that fallback happens “for all contexts other than
MimeTypes”. However currently Qt’s icon loader does not take contexts
into account at all. So fixing it in Qt would be difficult.

I have just pinged the Yaru theme maintainer, let’s hope the fix from
Yaru will land in Ubuntu soon.

-- 
You received this bug notification because you are a member of Ubuntu
Touch seeded packages, which is subscribed to qtbase-opensource-src in
Ubuntu.
https://bugs.launchpad.net/bugs/1853768

Title:
  Qt apps, like kid3-qt, which uses legacy icons "document-*.png", show
  them as normal document icon under Yaru theme

Status in Yaru Theme:
  Fix Released
Status in qtbase-opensource-src package in Ubuntu:
  Confirmed
Status in yaru-theme package in Ubuntu:
  Confirmed

Bug description:
  Qt apps, like kid3-qt, which uses these legacy icons:

  document-open.png
  document-open-recent.png
  document-save.png
  document-save-as.png
  document-revert.png
  document-import.png
  document-export.png

  The icons are all shown as the same normal document icon under Yaru.

  Qt apps only have a problem with legacy icons starting with
  "document-*" and all other legacy icons are inherited from Humanity
  under Yaru.

  Is there a general solution to force Qt apps to choose the closest
  icon name from Yaru or Humanity?

  Should this bug be issued against upstream Qt?

To manage notifications about this bug go to:
https://bugs.launchpad.net/yaru/+bug/1853768/+subscriptions

-- 
Mailing list: https://launchpad.net/~touch-packages
Post to     : touch-packages@lists.launchpad.net
Unsubscribe : https://launchpad.net/~touch-packages
More help   : https://help.launchpad.net/ListHelp

Reply via email to