Friday, July 3, 2020

Big Sur’s Narrow Alerts

Craig Hockenberry:

Why do I have this
huge ass screen on
my Mac and am now
reading alerts with
four or five words in
each line?

Seems like a bad
idea when a majority
of Macs have a
display with landscape
orientation. Portrait
makes sense on a phone,
but I find it hard to
use on a Big
Sur desktop.

The reason is to make it look more like iOS, perhaps so that iOS apps running on macOS 11 fit in better. We’re continually told that macOS and iOS are not merging, and that the Mac will still be the Mac, yet Apple continues to make changes to macOS like this that degrade the user experience in favor of consistency with iOS. Look at the Catalyst apps. Even the praised Messages app is gaining bugs and losing features like transcripts, AppleScript, and good keyboard support that weren’t in the iOS version.


Alerts are cardlike rectangles that use the same corner radius as all windows in macOS 11. Within an alert, most content is center aligned.

Centered text is difficult to read when there are multiple lines. It’s also disorienting that sometimes the buttons are arranged horizontally and other times vertically. And it introduces an incosistency with dialogs, which often are just alerts with more content, but now they have different text alignment and a different style of button.


Update (2020-08-19): Jeff Johnson:

These iOS style alerts in Big Sur are great.

Look at that scroll bar.

Update (2020-09-08): Riccardo Mori (tweet):

Their layout is also inconsistent [buttons side-by-side vs. stacked].


This second dialog box, as you can see, has an additional problem: the text block is longer than the space afforded. It looks truncated, but actually you can read it in its entirety by hovering over it with the mouse and scrolling down. Something that’s not at all apparent at first glance, by the way.


Another inconsistency is that sometimes — like in previous Mac OS versions — one of the buttons will be highlighted (see the first dialog above, from Mail), other times all buttons are grey.


Yet another inconsistency is that dialogs like this one essentially retain the old design[…]

In this example, the dialog is slightly off the beaten path, with a checkbox and text that updates, so probably the NSAlert API could not be used. As a result, the layout and styling are totally different.

Update (2020-09-28): Peter Steinberger:


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

I get it that a lot of things are subjective, beauty is in the eye of the beholder, etc, but how can anyone say these alerts with all the text centered look good? Or are even legible? I like Big Sur overall, but this change is just baffling.

Nick Heer:

Dialog boxes build upon these flaws by inexplicably centring their contents and stacking action buttons at the bottom. Sometimes, those buttons appear side-by-side; I think this is only the case if there are exactly two actions. In any case, these dialogs are often very tall with small and hard to read text, but the buttons are unnecessarily large. At the very least, it is a truly strange use of space on displays of all sizes. In most cases, I think they are an unforced regression.

Damien Petrilli:

OMG this checkbox is almost invisible.

Update (2020-12-09): Max Seelemann:

The perils of running 10 Mac minis on a CI, todays finding: why the hell does the same alert look different on two identical Macs with identical (scripted) setup?

Only difference is DNS name, IP address and background color 😂

Update (2020-12-16): Nick Heer:

I have tried — I really have — but centred text in tall dialog boxes is a bad idea that needs to be changed.

Update (2021-01-01): Peter Steinberger:

Something tells me nobody tried logging into a VPN since the Big Sur transition to iOS-style alerts. 😬

Update (2021-06-07): Peter N Lewis:

This Alert rendering in Big Sur is so horribly awful. I don’t even know what to do except trash it and make my own sheets instead of using system alerts. They are irredeemable. Vertical, scrolling, wrapped text, wrapped titles. It is just awful.

Update (2021-09-07): Craig Hockenberry:

Apple really doesn’t give a shit about alerts on macOS. This text is scrolled all the way to the bottom and the last line gets cut off.

5 Comments RSS · Twitter

It’s starting to become obvious that many of Apple’s UI decisions (and perhaps even MBP hardware) these days aren’t “we’re doing X because studies show that...” or “customers told us that they need Y” but rather the old Aqua-esque “it looks cool in a showroom / demo”.

The decisions we’re seeing so far in Big Sur are so glaringly wrong and particularly obvious since Apple is digging deep and redoing so much of the UI that you can’t simply explain it away as some old stuff decided long ago that just keeps slipping through. They’re actively choosing this!

IMHO there were a few years, centered around about 2010, where this wasn’t so glaringly true. OS X looked and operated really well, and there weren’t too many things to complain about on their laptops.

Sander van Dragt

I wonder if this is addressing ‘banner blindness’ by limiting the amount of text that can be put on one of those alerts. The dev has to be clearer in the communication with the user. Also some of the other changes such as the modality communicate to the user this is a decision that has to be made.

At the same time the amount of mental effort to make the decision is reduced through the simplified UI. Pretty clever really.

Please use "[alert setAccessoryView:myViewWithEverythingr];" to fight back. :)

Judging by WWDC screenshots, the horrible redesigned NSAlerts weren't changed in Monterey.

I'm sure I wasn't the only one who submitted plenty of feedbacks to Apple with requests to restore the normal pre-Big Sur alerts.

I wonder if there's a way to increase the pressure on Apple to demand to address this disaster?

I just found that someone created a replacement for NSAlert on Big Sur:

I started implementing it in my apps and it's great. It restores the pre-Big Sur dialog design and layout while preserving the new titleless window appearance.

It requires a few changes:

To make the window moveable, do the following in the -init method:
• Remove the NSWindowStyleMaskDocModalWindow mask
• add _panel.movableByWindowBackground = YES

Also, you'll need to change the font from Helvetica to systemFont... and adjust font sizes as needed. Once it's done it works perfectly.

While it won't affect the rest of the system and other apps, at least your own apps will look decently.

Leave a Comment