rncbc / drumkv1

drumkv1 - an old-school drum-kit sampler
https://drumkv1.sourceforge.io
GNU General Public License v2.0
35 stars 6 forks source link

Low res icon on GNOME tab switcher #16

Closed simonvanderveldt closed 7 years ago

simonvanderveldt commented 7 years ago

This is caused by the .desktop file not being the same name as the executable. Renaming drumkv1.desktop to drumkv1_jack.desktop fixes this. Is this something that can be done?

rncbc commented 7 years ago

why don't you copy or symlink drumkv1_jack.desktop -> drumkv1.desktop on package install? the issue seems to be yet another gnome mischief :(

the drumkv1.desktop file explicitly states that Icon=drumkv1 while there's even a scalable (svg) version for the icon on standard desktop places (.../share/icons/hicolor/scalable/drumkv1.svg) why on hell does gnome chose the low-res one is utterly beyond upstream understanding.

simonvanderveldt commented 7 years ago

@rncbc Yeah, I can probably rename it after install. Symlink won't work I expect because then there'll be two entries in the menu.

I was surprised by this as well, seems like a GNOME issue where they're not properly adhering to the spec. I'll file a bug for GNOME to see if it can be fixed there.

simonvanderveldt commented 7 years ago

@rncbc Alright, I've had a chat with some GNOME guys and this is actually caused by the application's WMClass not matching with the .desktop filename. This is way the WM/DE (in this case GNOME) determines which .desktop file belongs to which running program. It then uses the icon as defined inside the .desktop file for that application.

So apparently drumkv1's WMClass value is drumkv1_jack, which means the .desktop file also has to be called like that for it to work. I believe there are three ways to fix this:

@rncbc Which option do you prefer?

rncbc commented 7 years ago

Set StartupWMClass=drumkv1_jack inside drumkv1.desktop

this might be the outright solution. thanks

rncbc commented 7 years ago

Set StartupWMClass=drumkv1_jack inside drumkv1.desktop

in git head master (https://github.com/rncbc/drumkv1/commit/2b815ec) cheers

simonvanderveldt commented 7 years ago

in git head master (2b815ec)

It works :) Noticed you've also already fixed this for synthv1 and samplv1, awesome! Thanks for the quick fix!

simonvanderveldt commented 7 years ago

Forgot to close this, but a good reminder to check 0.8.3 and it now works, thanks again!