Have you noticed how many features added to macOS over the years are simply “bolted-on?” It is perplexing how some of these features not complete, and yet, they persist.
Launchpad is a good example of this. It is essentially a bolt-on UI abstraction of the Applications folder that allows users to access and organize apps like one would on an iPhone. UI abstractions are fine if they are feature complete, but Launchpad is not feature complete.
Let’s look at a common workflow within macOS; uninstalling an app. I’ll drag Firefox from launchpad to the trash on the dock. What would a user expect to happen here? Classically, dragging an application from the Applications folder to the trash would work as expected. This is the uninstall workflow for applications on macOS and has been for over 20 years. So what happens when this is done via Launchpad?
Nothing. Firefox moves back to where it was in the Launchpad grid and no action is taken. Huh??? Well, let’s try another app. Let’s drag Mona to the trash and see what happens.
The application awkwardly transitions back to where it was in the Launchpad grid… but wait! Now we are presented with a strange, poorly presented popup asking if the application should be uninstalled. Why did the application not simply move into the trash? Why is Mona being presented with an uninstall dialog, where as for Firefox nothing happened at all?
As it turns out, Launchpad can only uninstall applications that were originally installed via the App Store. Not in the OS standard way, though. Instead it leverages a brand new popup dialog. Why?
Both apps from this example, Mona and Firefox, can be uninstalled via drag-and-drop from the Applications folder to the trash. Only in Launchpad does this weird behavioral difference exist.
Launchpad’s bolt-on status goes beyond its bolt-on look and feel. It violates macOS UX – this is not the way this OS was designed to be used. It is functionally broken. It is not a joy to use. I think it is fair to say that Launchpad is not a good macOS citizen.