1

I've installed TeamSpeak 3 to $HOME/Applications and I've created a custom desktop file:

[Desktop Entry]
Name=TeamSpeak 3
Comment=VOIP Client
Path=/home/tomas/Applications/TeamSpeak3-Client-linux_amd64
Exec=bash ts3client_runscript.sh
Icon=/home/tomas/Pictures/icons/teamspeak-3-icon.png
Terminal=false
Type=Application

This shows up perfectly in Gnome 3 and I can pin the application to my sidebar:

screenshot 1

However, when I click the icon to launch TeamSpeak, the launched application spawns a new icon rather than being bound to the icon I pressed:

screenshot 2

Why does this happen? What mechanism does Gnome 3 use to decide which running applications are bound to which sidebar icons? Is there anything I can do to make this work?

My first guess was that it's because the actual application isn't launched directly, but through a bash script. I tried adding exec to the runscript to make the application be the direct child of the launcher, but it didn't make a difference.

1

I was able to fix it by adding this to my .desktop file:

StartupWMClass=<GnomeShellTooltipOfTheSecondIcon>

xprop can also be used to know the WM_CLASS.

Source: https://askubuntu.com/a/635839

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service, privacy policy and cookie policy

Not the answer you're looking for? Browse other questions tagged or ask your own question.