Devido ao fato de que sua pergunta está bem documentada, podemos encontrar o problema:)
-
Na sua aplicação, você define:
root = tk.Tk(className='MyTkApp')
-
Agora, se você abrir um terminal, digite:
$ xprop WM_CLASS
e, em seguida, clique na janela do seu aplicativo, ele mostra:
WM_CLASS(STRING) = "myTkApp", "Mytkapp"
Isso é apenas não é o mesmo que a classe de janela que você definiu; as capitais são diferentes. A única conclusão é que, por algum motivo, a classe da janela (formato de capital) definida não é aceita pelo gerenciador de janelas.
Quando alterei seu iniciador para corresponder a myTkApp
:
StartupWMClass=myTkApp
funciona bem (por conveniência, eu configuro o ícone do firefox, já que não tenho seu ícone):
[Desktop Entry]
Type=Application
Terminal=false
Name=My Tk Application
Exec=/home/jacob/Bureaublad/testapp.py
Icon=firefox
StartupWMClass=myTkApp
O resultado: