Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Colorful locked icon is taken from system icon theme (breeze-icons) #5130

Closed
jensrutschmann opened this issue Jul 19, 2020 · 6 comments
Closed

Comments

@jensrutschmann
Copy link
Contributor

Overview

On KDE when using the colorful tray icon, the locked icon is taken from the system theme, it's this one: https://github.com/KDE/breeze-icons/blob/master/icons/status/22/keepassxc-locked.svg
The unlocked icon is taken from KeepassXC (it's the green app icon as expected) and also all other icons in the app seem to work as expected, it's only this one.

I don't have qt5ct installed.

What I tried:

  • I logged out, on a VT deleted ~/.cache, logged back in -> same problem.
  • Launching with QT_QPA_PLATFORMTHEME= keepassxc doesn't change anything.
  • It also happens with a clean user account, (deleted all (dot) files in home) so I don't think it's related to (user-level) caching.

It seems to be related to the icon file names:

  • The color icons in KeepassXC are:
    • share/icons/application/scalable/apps/keepassxc.svg
    • share/icons/application/scalable/apps/keepassxc-locked.svg
  • The breeze theme contains:
    • /usr/share/icons/breeze/status/22/keepassxc-unlocked.svg
    • /usr/share/icons/breeze/status/22/keepassxc-locked.svg
  • If I rename /usr/share/icons/breeze/status/22/keepassxc-locked.svg to something else, the locked icon is taken from KeepassXC and not the breeze theme anymore.
  • If I rename the breeze file /usr/share/icons/breeze/status/22/keepassxc-unlocked.svg to /usr/share/icons/breeze/status/22/keepassxc.svg (so it matches the unlocked icon filename from within KeepassXC) then suddenly the unlocked icon is also taken from Breeze rather than the bundled icon.

The same behavior applies to the app icon as used in KDE task bar or the "start menu":
Once I had renamed the breeze file /usr/share/icons/breeze/status/22/keepassxc-unlocked.svg to /usr/share/icons/breeze/status/22/keepassxc.svg the app icon was no longer the green icon but the one from the breeze theme.
And just to confirm: this happens with 2.6.0 so some code is definitely still loading system theme icons.

This also happens with the fix for #4963. I compiled revision ff9dd43 which contains commit 2fe74c2

Steps to Reproduce

  1. Running on KDE, open KeepassXC
  2. Enable the tray icon
  3. If no database is opened, open one, then lock.

Expected Behavior

All tray icons should be taken from KeepassXC

Actual Behavior

Colorful locked tray icon is taken from breeze-icons package.

Environment

KeePassXC - Version 2.6.0-snapshot
Build Type: Snapshot
Revision: ff9dd43

Qt 5.15.0
Debugging mode is disabled.

Operating system: Arch Linux
CPU architecture: x86_64
Kernel: linux 5.7.8-arch1-1

Enabled extensions:

  • Auto-Type

Cryptographic libraries:
libgcrypt 1.8.6

Additional System Info

Operating System: Arch Linux
KDE Frameworks 5.72.0
Windowing System: X11

@droidmonkey
Copy link
Member

Sorry got confused

@jensrutschmann
Copy link
Contributor Author

No worries. I don't know enough about Qt to further look into this on my own, but do let me know if you'd like me to test any patches.

@droidmonkey
Copy link
Member

This is fixed by #5011

@droidmonkey droidmonkey added this to the v2.6.1 milestone Aug 3, 2020
@jensrutschmann
Copy link
Contributor Author

@droidmonkey Unfortunately this is not fixed. I can still reproduce with the latest develop:

KeePassXC - Version 2.6.0-snapshot
Build Type: Snapshot
Revision: 71b05db

@droidmonkey
Copy link
Member

Is this still a problem?

@droidmonkey droidmonkey removed this from the v2.7.0 milestone Mar 21, 2022
@jensrutschmann
Copy link
Contributor Author

Hi @droidmonkey, I think this can be closed because circumstances seem to have changed.

As a personal workaround I had set up a an extraction filter for the breeze-icons package so the problematic icons were no longer extracted on my system when installing / updating this package.

Today I removed the filter and reinstalled the package, just to find that the icons were still missing. Turns out they aren't included in breeze-icons anymore since this commit from 2021-01-17: KDE/breeze-icons@0ee909f

The only remaining keepassxc-related icons are all owned by the keepassxc package:

root:/usr/share/icons> find . -iname *keepassxc*
./hicolor/scalable/apps/keepassxc-monochrome-light.svg
./hicolor/scalable/apps/keepassxc-monochrome-light-locked.svg
./hicolor/scalable/apps/keepassxc.svg
./hicolor/scalable/apps/keepassxc-unlocked.svg
./hicolor/scalable/apps/keepassxc-locked.svg
./hicolor/scalable/apps/keepassxc-monochrome-dark-locked.svg
./hicolor/scalable/apps/keepassxc-monochrome-dark.svg
./hicolor/scalable/mimetypes/application-x-keepassxc.svg
./hicolor/256x256/apps/keepassxc.png

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

2 participants