Last Week on My Mac: Keyboard shortcuts killed by bug

macOS is designed to be rich in features and highly adaptable to everyone’s taste. It’s also designed to be driven in a variety of ways, including extensive use of keyboard shortcuts. To customise your keyboard shortcuts, open the Keyboard pane, switch to the Shortcuts tab, and select App Shortcuts on the left.

What you get in macOS Mojave 10.14.3 is a pane which is so dysfunctional as to be essentially unusable.

Demonstrating this takes but a few seconds. Click the + tool to add a new keystroke shortcut, type in the name of a menu command and then set it a shortcut such as ⌘1. Because this ingenious feature spots matching menu commands, the command doesn’t even need to exist, although here I’ve used an example from Podofyllin.

shortcut2bug01

Add three or so of these, and you’ll notice something odd: instead of the pane giving the menu command, it substitutes a horizontal ellipsis sign …, as if the command was too long to fit in the space available.

shortcut2bug02

When you try to edit the command associated with that shortcut, the editing box is tiny, just over two characters in width, so tiny that it’s hard to read or change its contents.

shortcut2bug03

With a fourth shortcut added, every single entry made by the user is replaced by an ellipsis. Which command is which shortcut? Well, you can either read it through the selection keyhole, or view it in the tooltip attached to the ellipsis.

shortcut2bug04

I have spent some time looking for workarounds which make this feature still usable, and cannot find any. This bug effectively renders the App Shortcuts feature unusable in Mojave 10.14.3.

You may not use App Shortcuts, and consider them a minor feature of little importance. This bug, though, reveals a great deal about what is going wrong inside Apple, which is the reason for this article.

The bug has occurred because of a simple programming error using what I believe Apple refers to as an Outline View. The error is that the first column width, containing the command names, has been set too narrow, and isn’t adjustable by the user either. In coding terms, it’s a trivially simple error which should take a few seconds to fix. So how has it escaped into a release version of Apple’s flagship operating system?

For this bug to have occurred, one of Apple’s software engineers has changed some code (or the view’s configuration in Xcode’s Interface Builder). I cannot believe that they didn’t open this pane and test it, even briefly, and must have seen how their change had rendered it unusable. Yet they didn’t fix it, and left it for release.

Any engineer who didn’t have time or knowledge to fix that bug would have reported it to their superior, who would be responsible for signing off the changes that were being made. That superior either made no effort whatsoever to check the problem, or discovered it and failed to report that problem up the chain.

This isn’t a subtle bug which only occurs in certain circumstances. It was reported to me by John, and I have tested and tested it again: it occurs every single time that I use that pane. It is immediately obvious, and – unless Apple is using extraordinarily contorted code – should be simple to fix. It isn’t going to take a large team of engineers several weeks to identify the problem, or to rectify it.

What is more, as far as I can see, this bug has existed since macOS High Sierra 10.13.4, almost a year ago, in March 2018, if not before.

Yet everyone in Apple, from the original software engineer upwards, has ignored it. No one has felt it necessary to do anything about this bug, and has let it be unleashed on users who have paid thousands of dollars/euros/pounds for their Macs. App Shortcuts? Forget them, they’re broken because no one could be bothered.

This isn’t an Apple which has any concern over the quality of its products, or for its users. It’s just another leviathan corporation which has stopped caring or taking pride. One small bug reveals a deep and pervasive problem.

I’m sure that someone will come along and tell me to enter this into Apple’s Bug Reporter. Are you kidding? Apple needs outsiders to point out what its engineers are fully aware of? That in itself is telling too. No, Apple, if you can’t see your problems, you’re never going to address them.