Document Icons Suddenly Gone

Currently running under Mac Monterey. My Xojo app has been running fine for 5+ years, and its documents have always shown their correct icons. Suddenly today when I dragged a couple of document files into the IDE Navigator (as I’ve done on countless occasions in the past), all the app’s docs lost their finder icons. I didn’t touch the FileTypes Editor at all.

  • The docs are XML with a custom extension.
  • In the FileTypes editor they have icons, extensions, UTIs in the form of com.mycompany.myapp.mydoctypename.
  • They’re set to conform to public.text
  • I can double-click the docs and they open in the app.

Rebooted the Mac and still no icons.

Go to a terminal and type

mdls path/to/file

To make sure the metadata is correct.

I’ve seen this happen in the past when debugging if the debug app has a higher version than the last full build of your app because macOS says “oh, there’s a newer version, I should use those icons” and then the debug app goes away and macOS isn’t smart enough to use the older one again.

1 Like

If you run into this a lot, you might want to try TinkerTool System (7 or 8 depending on the system you’re running). It has a tool for cleaning the icon database cache.

XCode claims xml files (and have an Icon for it).

Not sure how to interpret for correctness. It all looks reasonable, and the same as documents of another of my custom filetypes whose icons do show. kMDItemFSHasCustomIcon = (null) for both the ones whose icons display properly and those whose don’t.

Sounds reasonable, but this is the first time it’s happened, over hundreds of builds. Odd that it seemed to happen at the moment I dragged a couple of files into the Xojo IDE.

Wow, TinkerTool is still around? :open_mouth:

I’ve been into all its menus I think, and can’t find this function :frowning:

My files have custom extensions so this is not an issue.

Found it! Will try as soon as I get a license…

It worked! Yay!

Make sure you’re looking at their “TinkerTool System” product as opposed to plain old “Tinkertool”.