Launchpad is an easy way to find and open apps on your Mac. You can even arrange and organize your apps into folders.
Open an app
- Click the Launchpad icon in the Dock, or pinch closed with your thumb and three fingers on your trackpad. Then click an app to open it.
- You can also type an app's name to find the app in Launchpad, then press the Return key to open it.
- To close Launchpad without opening an app, click the background, or pinch open your thumb and three fingers.
Apps that you download from the App Store or that are included with macOS automatically appear in Launchpad. If you download an app from another source, you can add it to Launchpad by moving the app to your Applications folder. Learn how to delete an app from your Mac, which also removes the app from Launchpad.
Organize apps
- Arrange apps: Drag an app to a new location.
- Create a folder: Drag an app onto another app.
- Close a folder: Click outside the folder.
- Rename a folder: Open a folder and click its name. Then enter a new name.
- ' Add an app to the Dock: Drag the app to the Dock, then drop the app to the left of the Dock’s separator line. The app is in the Dock and in Launchpad. The OP did not mention in his/her original posting that the app was not from the App Store until a few days after I originally responded.
- Before we start, make sure your Mac is running Mac OS X 10.7 or higher. This tutorial does not require any additional software. Rearranging Apps On Launchpad. Open Launchpad by simply clicking on the Launchpad app on your Mac’s dock. If you have removed Launchpad from your dock, search for “Launchpad” in Spotlight search and launch it.
Add or remove an app
- Apps that you download from the App Store or that are included with macOS automatically appear in Launchpad. If you download an app from another source, you can add it to Launchpad by moving the app to your Applications folder.
- Learn how to delete an app from your Mac, which also removes the app from Launchpad.
Launchpad in macOS is definitely one of the most cumbersome apps to setup,although it can be pretty nice to have setup as it provides a little moreorganisation than adding your Applications folder to the Dock.
The problem up until this point was understanding how it works so that we canbuild automation tools around it. However, this changes today as we explorethe way Launchpad works under tho hood :)
Connecting to the Launchpad SQLite Database
Launchpad stores all of its data in an SQLite database which you can reach asfollows:
You may check out the entire database schema using the schema command:
The structure of Launchpad data is as follows:
Useful Tables
The dbinfo table provides the root id for each type of Launchpad data.
- launchpad_root is the root id for the main Launchpad apps pages
- dashboard_root is the root id for the Dashboard widget pages
(accessible by clicking the + icon in Dashboard) - launchpad_version_root: is the root id for Launchpad version metadata
(this is of least importance to us)
We then move onto the tables containing data about each type of object in Launchpad:
- groups: contains all available root objects, pages and folders for bothLaunchpad and Dashboard.
- apps: contains all apps available for Launchpad
- downloading_apps: contains all apps currently being downloaded forLaunchpad
- widgets: contains all widgets available for Dashboard
Finally, the items table references these 3 tables and contains orderingand parent assocations.
Walkthrough
dbinfo
apps:
widgets
groups
OK, so dbinfo, apps and widgets are clear, but the groups not so much. We knowthat groups 1, 3 and 5 are root groups (as shown by the dbinfo table), and 129looks like a folder, but we still don’t know what the rest are just yet.
Now, we’re about to look at the items Merge folders windows 10. table which ties all of thisinformation together. Before we take a look at items, it’s important thatsome concepts are explained:
- rowid primary / foreign keys: The items table contains a rowidattribute which is its primary key. However, it is also a foreign key tothe apps, widgets and groups tables. What this means is that ids are uniqueacross all of these three tables. So for example, if an app has an id of11, then it is impossible for a widget or group to also use this id.
- type: Due to the fact that the rowid may reference one of 3 tables, theitems table uses a field called type which specifies what type of objectthe respective item references.
The types are as follows:
- groups table
- 1: root
- 2: folder root
- 3: page or folder page
- apps table
- 4: app
- downloading_apps table:
- 5: downloading app
- widgets table:
- 6: widget
Knowing all these things, let’s now take a look at all groups in the itemstable:
Note: DB refers to Dashboard and VERS refers to Version.
OK, so let’s attempt to break this down. We start with our root objects (asalso referenced in the dbinfo table):
So let’s start with the root id 1 (Launchpad) and check out all the pages which have a parent_id referencing it:
Here, we have the holding page first, and 3 pages with ids of 128, 134 and 135respectively. Please also note that unlike apps and widgets, the ordering ofthe actual page content starts at 1 due to the holding page occupying orderingof 0.
Similarly, let’s check out root id 3 (Dashboard) and all pages having it asas a parent_id:
Once again, a holding page and a single page with an id of 136.
We next check out the Launchpad version root of 5 which just contains aholding page:
And finally, we check out the Other folder:
Here, the folder root has an id of 129 and is present on the page with an idof 128 (i.e. page 1). As seen earlier when examining the groups table,the folder name is contained on the folder root object.
The first page of the folder has an id of 130.
Now let’s check out the item relating to one of our apps 1Password, which hadan id of 9 as seen above in the apps table:
So this item has a parent_id of 134 (which is on 2). The ordering is set to 0which implies that it is the first item on page 2 (which indeed is the casewhen examining Launchpad).
Macos Launchpad Moves Apps Download
Another bigger query you can run to see all items and their associationsis as follows:
Mac Add App To Launchpad
This will show you each item along with the related app, widget or grouptitle. The item type indicates which field will contain a title.
Triggers
The SQLite database contains various triggers which set the ordering ofof items when an item is added, updated or deleted.
This for example allows you to insert rows into the items table withspecifying the ordering and have the database automatically set ordering of theitem to be the last on that page.
You may disable this trigger by setting a key calledignore_items_update_triggers in the dbinfo table as follows: Uninstall telegram app 2018 mac. Protonmail app mac os.
Launchpad App Pc
You may enable it again by setting the value to 0:
Please find below the most important triggers and some comments abouthow they work:
Closing Words
I am currently working on a little Python script which will allow you tobuild your Launchpad via a YAML file using my findings.
One of the trickiest things to deal with are the triggers and seeing as howno trigger really allows ordering to be set to 0, I think that any automationtools should disable triggers while building these tables.
Further to this, it is important to take care when deleting items as this alsodeletes the respective entry from the apps (or widgets) tables which is likelyundesirable.
Hope this was helpful and Merry Christmas everyone! :)