Tuesday, November 17, 2020

Big Sur Application Icons

Craig Hockenberry:

If you’re a developer with a Mac app, you’ve likely heard both of the following support requests in the past few days:

1) “Can you put the old icon style icon back?”

2) “When are you going to update to the new icon style?”

It’s clear that customers want both icon styles.

The older icon style is easier to spot in the Dock (bigger and has a unique shape). More accessible.

The new icon style is more consistent, at the cost of readability. A cleaner look.

I get these questions every time the prevailing icon style changes. My apps have long offered the option to switch the Dock icon at runtime, as some people always prefer a previous style. Unfortunately, the -[NSApplication setApplicationIconImage:] API only works while the app is running.


Nova 3 even adds a super cool feature: a customizable dock icon that can automatically switch from “light” to “dark” when your Mac switches appearance.

Logan Collins:

This is using the (now somewhat dated) NSDockTilePlugin API, which is mainly used for calendar apps to show the current date in their icon.

This way works when the app isn’t running, but it requires an extra target/bundle and isn’t allowed in the Mac App Store.

Jeff Johnson:

I’m on Mojave, you maniacs!


Update (2020-11-20): Guilherme Rambo:

I’m using NSWorkspace at runtime to change the icon on Big Sur while keeping the same icon on Catalina, precisely for that reason

He’s actually modifying the application package on disk.

Update (2020-11-24): John Gruber:

I would pay $$$ for an update to Transmit whose only new feature was bringing back the good app icon.

Update (2021-01-12): Howard Oakley:

But it’s app icons which keep foxing me. The frequency with which I open the wrong Apple app from the Dock isn’t getting any less.


With Apple’s edict, all its own app icons, and those of many third parties, have now adopted the rounded rectangle, making them uniform, and in many cases barely distinguishable.


7 Comments RSS · Twitter

I haven't gone to Asset Catalogues yet (still Mac only) but it seems like Apple is creating different icons for different OS version with their built-in apps. I understand that you can set a minimum OS version for resources, so maybe that's the key?

I moved Contacts (from BS) to my Catalina partition (rebooted into Catalina) and it shows the old style icon. While on BS it shows the super-ellipse icon.

I think I'm going to have to make archives of every single app I have installed, so that when the app gets updated to the new style, I can easily grab a copy of the old one and copy&paste the old icon over the new one - though I doubt that will survive updates, so it probably means I'm going to be playing Whac-A-Mole. I wonder if I can write a Keyboard Maestro macro…

I did this with Slack, as I still find their new logo awful to have on my screen 😅 I have to replace the icon after every app update.

More generally, I don't like the move to standardised icon shapes for all apps. However, for apps that already followed the 'Mac standard' icon shape, I never liked the circle (in fact strongly dislike it), and much prefer the squircle style (e.g. Safari, iTunes, IINA, etc.).

@Sam macOS doesn’t support versioned icons, and the HIG says to use new icons everywhere.

What bothers me about BS icons is that the genuine application icon for apps that do not provide their own is now just the background of the new-style icons. Which is hard to spot in some situations.

That "the macOS 11 app icon style looks fine on a Mac running Catalina or earlier" line is one of the most Apple statements I've ever read. Good old Apple telling users and developers what they should like.

In my totally subjective opinion, it does not look fine, if only because those icons are slightly too small for pre-11 macOS versions.

Fortunately, implementing a Dock tile to give users a choice is easy, and doing so is fun in a nostalgic way, because it harkens back to the very early Mac OS X days, before system volume et al. moved to the menu bar.

Fortunately, implementing a Dock tile to give users a choice is easy, and doing so is fun in a nostalgic way, because it harkens back to the very early Mac OS X days, before system volume et al. moved to the menu bar.

Docklings! Was that API merely deprecated in 10.1, or is it flat-out impossible to still use that?

Leave a Comment