Java-Application aparece duas vezes no dash / dock

0

Primeiro de tudo: não, eu não tenho preguiça de pesquisar no google. Eu já tentei muitas coisas e o que todos dizem que deveria funcionar não funciona para mim.

Eu tenho o manjaro com o gnome shell 3.18.1 instalado. Dentro do gnome, eu instalei a extensão do dash-to-dock. Eu tenho pelo menos dois aplicativos java: yEd e phpstorm. Ambos têm o WM_CLASS sun-awt-X11-XFramePeer e um segundo WM_CLASS (jetbrains-phpstorm para phpstorm, que eu não lembro).

A versão do Java que estou usando é a mais recente do oracle:

~# java -version
java version "1.8.0_66"

yEd e phpstorm são instalados via yaourt e parece que os arquivos da área de trabalho são gerados corretamente. Mas, de qualquer forma, a única maneira de remover o segundo ícone do phpstorm (apenas o phpstorm está em favs) é definir StartupWMClass=sun-awt-X11-XFramePeer . Mas então yEd é mostrado na mesma partida.

Eu também tentei adicionar os dois: StartupWMClass=sun-awt-X11-XFramePeer,jetbrains-phpstorm mas claro, isso não funciona ...

Eu encontrei um monte de artigos para definir a classe corretamente, mas jetbrains-phpstorm não funciona (era isso antes e xprop WM_CLASS mostra essa classe também).

Há algo mais que eu esteja sentindo falta?

    
por iRaS 13.11.2015 / 15:31

1 resposta

2

Também vejo isso ao usar aplicativos baseados em Java.

Eu rastreei este problema até o Java não nulo terminando a cadeia WM_CLASS. Mutter parece retornar esta string inválida como resultado e o gnome-shell usa essa string inválida para corresponder ao nome do aplicativo que obviamente falha.

É um bug em Java, já que a cadeia WM_CLASS deve ser terminada em null. Não tenho certeza do que mudou no mutter para expor esse problema, pois funcionava anteriormente.

    
por 17.11.2015 / 13:35

Tags