Personnaliser son bureau KDE

Icône dans le gestionnaire de tâches

Dernière mise à jour : 26/11/2023 à 20h26
Table des matières

Introduction


Chaque application est associée à une icône dans le menu des applications. Elle permet de la reconnaître ou de l'identifier d'un coup. Sans prendre le temps le lire.
Certaines applications n'affichent pas leur icône dans le gestionnaire de tâches. Soit parce que celle ci n'a pas été intégrée au code de l'appli, soit à cause d'un bogue.
L'icône affichée dans ce cas est l'icône par défaut de X11, bien sûr si votre serveur d'affichage X11.


Un exemple. Dans le menu des applications, l'icône de Xcas, logiciel de calcul formel, du rpm mga9 est

xcas


Alors que son icône de fenêtre, et aussi celle dans le gestionnaire de tâches est

x11-icon


Au delà de l'esthétique ou du confort, la confusion s'installe quand plusieurs applications sans icône attitrée affichent toutes cette même icône par défaut dans le gestionnaire des tâches.


Il est toutefois possible d'afficher l’icône de l'application dans le gestionnaire des tâches.



Mise en œuvre


Prenons le cas de Xcas, logiciel de calcul formel sous Mageia 9 qui s'appliquera à toute appli.


  1. Démarrer Xcas.
  2. En console, Konsole par exemple, lancer la commande :
    Code BASH :
    xprop
  3. Une croix , + , apparaît sur l'écran pour sélectionner la fenêtre cible, donc celle de Xcas ici.
  4. Dans la liste des propriétés renvoyées, repérer la ligne WM_CLASS : WM_CLASS(STRING) = "FLTK", "FLTK". Cf ci-dessous.
    Caché :
    Code TEXT :
    _NET_WM_ICON_GEOMETRY(CARDINAL) = 559, 0, 38, 30
    _NET_WM_ALLOWED_ACTIONS(ATOM) = _NET_WM_ACTION_MOVE, _NET_WM_ACTION_RESIZE, _NET_WM_ACTION_MINIMIZE, _NET_WM_ACTION_SHADE, _NET_WM_ACTION_MAXIMIZE_VERT, _NET_WM_ACTION_MAXIMIZE_HORZ, _NET_WM_ACTION_FULLSCREEN, _NET_WM_ACTION_CHANGE_DESKTOP, _NET_WM_ACTION_CLOSE
    _KDE_NET_WM_FRAME_STRUT(CARDINAL) = 0, 0, 29, 0
    _NET_FRAME_EXTENTS(CARDINAL) = 0, 0, 29, 0
    _NET_WM_DESKTOP(CARDINAL) = 1
    _KDE_NET_WM_ACTIVITIES(STRING) = "a0ba8304-51f2-46d6-8060-47919945b56b"
    WM_STATE(WM_STATE):
                    window state: Normal
                    icon window: 0x0
    _NET_WM_STATE(ATOM) = 
    _KDE_NET_WM_USER_CREATION_TIME(CARDINAL) = 3433675
    WM_COMMAND(STRING) = { "/usr/bin/xcas" }
    _NET_WM_ICON(CARDINAL) = 
    WM_HINTS(WM_HINTS):
                    Client accepts input or input focus: True
    XdndAware(ATOM) = ATOM
    WM_CLASS(STRING) = "FLTK", "FLTK"
    _MOTIF_WM_HINTS(_MOTIF_WM_HINTS) = 0x0, 0x1, 0x1, 0x0, 0x0
    WM_NORMAL_HINTS(WM_SIZE_HINTS):
                    user specified location: 144, 119
                    program specified minimum size: 100 by 118
                    window gravity: Static
    WM_PROTOCOLS(ATOM): protocols  WM_DELETE_WINDOW
    WM_ICON_NAME(STRING) = "Xcas 1.9.0 (linux64)"
    _NET_WM_ICON_NAME(UTF8_STRING) = "Xcas 1.9.0 (linux64)"
    WM_NAME(STRING) = "Xcas 1.9.0 (linux64)"
    _NET_WM_NAME(UTF8_STRING) = "Xcas 1.9.0 (linux64)"
    _NET_WM_PID(CARDINAL) = 7307
    WM_LOCALE_NAME(STRING) = "fr_FR.UTF-8"
    WM_CLIENT_MACHINE(STRING) = "bureau"
     
  5. Éditer le fichier .desktop de l'appli avec un éditeur de texte : /usr/share/applications/xcas.desktop ; c'est à faire en root.
  6. Ajouter à la fin du fichier la ligne : StartupWMClass=FLTK
  7. Sauvegardez.
  8. Redémarrer l'appli. L'icône est cette fois dans le gestionnaire des tâches

screenshot_xcas-taches-20231125_182214


Pour l'icône de fenêtre, ce sera moins simple. Éditer le code et recompiler... ou ceci qui affirme « insérer » l'icône dans la fenêtre. C'est du C venu d'on ne sait où.
Je n'ai pas osé.


Meuz, le 26/11/23

Cette page a été vue 482 fois