Come si aggiorna la cache delle icone?


17

Prima di tutto, non sono sicuro al 100% che la domanda principale che ho scritto qui sia in realtà il problema, ma ho il sospetto che lo sia. Ho scritto una semplice applicazione Gtk # in Mono qualche tempo fa e le ho dato un ICO personalizzato come file icona. Ha funzionato alla grande.

Recentemente sono andato a cambiare questa icona con una diversa, ma quando creo ed eseguo il programma mostra ancora l'icona. Mi sono assicurato di aver aggiornato ogni riferimento al file icona con quello nuovo e di aver eliminato del tutto la vecchia icona dal disco rigido. Ma viene comunque visualizzato nel Launcher quando eseguo il programma.

Suppongo che questo significhi che Gtk memorizza nella cache le icone da qualche parte in Ubuntu e probabilmente dovrò forzare l'aggiornamento. Qualche consiglio?

Risposte:


25

eseguire quanto segue in un terminale:

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

+1, funziona perfettamente su Wayland.
ankostis,

Ancora rilevante. Ho appena risolto il problema con l'icona della mia app su Ubuntu 19.04.
Jamie Carl,

4

Devi:

  • Aggiorna il timestamp nella directory delle icone di livello superiore
  • Correre gtk-update-icon-cache

Nota: hicolor è il tema predefinito che gli sviluppatori di app dovrebbero usare. se stai creando un tema icona, aggiorna invece la cartella del tema icona.

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

Vedi (l'unica documentazione che posso trovare per questo): https://fedoraproject.org/wiki/Packaging:Scriptlets#Icon_Cache


2

Al prompt dei comandi del terminale digitare:

$ unity

Questo aggiornerà le tue icone * .desktop nel Launcher.

Se il problema non è Ubuntu Launcher ma l'applicazione stessa dà un'occhiata a http://stackoverflow.com per le risoluzioni di programmazione.

Un problema simile a questo è risolto su /programming/5315359/custom-libindicator-icon-is-not-displayed/6503807#6503807

Guarda anche: https://developer.gnome.org/gtk3/stable/gtk-update-icon-cache.html


Questo non ha funzionato
soapergem

@SoaperGEM Il unityproblema con il vero launcher. L'esecuzione dell'unità al prompt dei comandi aggiornerà le icone di avvio di Ubuntu. La mia risposta è stata diretta verso un Ubuntu Launcherproblema. Dal momento che non funziona è molto probabilmente un gtkproblema di programmazione. Potresti ottenere risposte migliori (più rapide) con l'effettivo problema di programmazione gtk su stackoverflow.com . Dopo aver risolto la visualizzazione effettiva dell'icona del programma gtk, ovvero quando avresti eseguito il unitycomando per aggiornare la cache di avvio di Ubuntu. Dammi 5 minuti per aggiornare la mia risposta.
LD James

questa risposta necessita di un avvertimento.
Ace

@Ace Puoi approfondire l'avvertimento?
LD James,

3
@LDJames, attualmente in esecuzione unityforzerà la chiusura di tutte le applicazioni in esecuzione e riavvierà l'unità. Per questo motivo ho perso i dati nel mio browser.
Ace
Utilizzando il nostro sito, riconosci di aver letto e compreso le nostre Informativa sui cookie e Informativa sulla privacy.
Licensed under cc by-sa 3.0 with attribution required.