Comment actualiser le cache d'icônes?


17

Tout d'abord, je ne suis pas sûr à 100% que la principale question que j'ai écrite ici soit en fait le problème, mais j'ai une intuition. J'ai écrit une application Gtk # simple dans Mono il y a un certain temps et lui ai donné un ICO personnalisé comme fichier d'icône. Fonctionne très bien.

Récemment, je suis allé changer cette icône pour une autre, mais quand je construis et exécute le programme, il affiche toujours l'icône. Je me suis assuré d'avoir mis à jour chaque référence du fichier d'icônes vers le nouveau, et j'ai complètement supprimé l'ancienne icône du disque dur. Mais il apparaît toujours dans le lanceur lorsque j'exécute le programme.

Je suppose que cela signifie que Gtk met en cache les icônes quelque part dans Ubuntu et j'ai probablement besoin de forcer cela pour se rafraîchir. Aucun conseil?

Réponses:


25

exécutez ce qui suit dans un terminal:

sudo update-icon-caches /usr/share/icons/*

+1, fonctionne parfaitement sur wayland.
ankostis

Toujours d'actualité. Je viens de corriger le problème de l'icône de mon application sur Ubuntu 19.04.
Jamie Carl

4

Tu dois:

  • Mettre à jour l'horodatage sur le répertoire d'icônes de niveau supérieur
  • Courir gtk-update-icon-cache

Remarque: hicolor est le thème par défaut que les développeurs d'applications doivent utiliser. si vous créez un thème d'icônes, actualisez plutôt le dossier de votre thème d'icônes.

sudo touch /usr/share/icons/hicolor ~/.local/share/icons/hicolor
sudo gtk-update-icon-cache

Voir (la seule documentation que je puisse trouver pour cela): https://fedoraproject.org/wiki/Packaging:Scriptlets#Icon_Cache


2

À l'invite de commande du terminal, tapez:

$ unity

Cela mettra à jour vos icônes * .desktop dans le lanceur.

Si le problème n'est pas le lanceur Ubuntu mais l'application elle-même, consultez http://stackoverflow.com pour les résolutions de programmation.

Un problème similaire à celui-ci est résolu sur /programming/5315359/custom-libindicator-icon-is-not-displayed/6503807#6503807

Regardez également: https://developer.gnome.org/gtk3/stable/gtk-update-icon-cache.html


Cela n'a pas fonctionné
soapergem

@SoaperGEM Le unityproblème avec le lanceur réel. L'exécution de l'unité à une invite de commandes rafraîchira les icônes du lanceur d'Ubuntu. Ma réponse était dirigée vers un Ubuntu Launcherproblème. Comme cela ne fonctionne pas, c'est probablement un gtkproblème de programmation. Vous pourriez obtenir de meilleures réponses (plus rapides) avec le problème de programmation gtk réel sur stackoverflow.com . Après avoir résolu l'affichage réel des icônes du programme gtk, vous devez exécuter la unitycommande pour mettre à jour le cache du lanceur d'Ubuntu. Donnez-moi 5 minutes pour mettre à jour ma réponse.
LD James

cette réponse nécessite un avertissement.
Ace

@Ace Pouvez-vous élaborer sur l'avertissement?
LD James

3
@LDJames, en cours d'exécution unityforcera la fermeture de toutes les applications en cours d'exécution et redémarrera l'unité. J'ai perdu des données dans mon navigateur à cause de cela.
Ace
En utilisant notre site, vous reconnaissez avoir lu et compris notre politique liée aux cookies et notre politique de confidentialité.
Licensed under cc by-sa 3.0 with attribution required.