sometimes my panels icons doesn’t honore the settings, the workaround I found is to remove icon-cache.kcache and plasma_theme_[theme-name].kcache in /home/[username]/.kde/cache-[ComputerName], but, my newbbi-question is, why the system needs to cache this icons???
thnx :)
For the same reason all caches are there… performance.
Not meaning it’s normal the “panels icons doesn’t honore the settings”! kded4 should check any icon update and run kbuildsycoca4 to update the cache. Then the app should listen for cache updates (but not sure about what “panels” you are talking about).
hum, is it so different in performance have icons in cache, written on a file, than to have them in their address? my newbbie mind is surprised…
it should, but sometimes dont, the panel is this:
http://paste.opensuse.org/view/download/31199534
and sometime icons go back to standard, may be after a kde 4.8.1 crash, lately quite often,
Re your original question why an icon cache.
It depends.
The traditional way of implementing icons is to load each icon as an individual file, especially if an icon is used more than once then it becomes very costly to continuously load the same tiny file. It’s long been known that there is a relatively heavy minimal cost involved whenever images are loaded and displayed so even if the images are tiny but there are many, then the end result is a noticeable latency/lag to load images on demand.
But, today the “better” way is to deploy all icons in a single “sprite” file which is loaded only once, and when an icon is needed the co-ordinates for that image is used to retrieve from the sprite file. If this is done, then no caching is needed because all images are loaded only once when the sprite file is loaded…
HTH,
TS
Many thanks, very interesting, managing the icons to modify them for my panel, I saw a similar thing, network icon for example is one file with many icon inside, so it seems that today KDE4 use this way?? and if yes why it needs of cache?? and also, wher co-ordinates for each icon are written??
thnx again:-)