Make your Mac invincible
Bartender is an award-winning app for macOS that superpowers your menu bar, giving you total control over your menu bar items, what's displayed, and when, with menu bar items only showing when you need them. Bartender improves your workflow with quick reveal, search, custom hotkeys and triggers, and lots more. Download Free Trial. Steps Download Article. Click the Apple menu. It’s the apple-shaped symbol at the top-left corner of the screen. Click System Preferences. Double-click Extensions. It’s in the third group of settings and has a puzzle piece icon. Click Share Menu. It’s in the left panel. Select apps to add or remove.
Without a doubt, the menu bar is one of Mac’s great features. It’s condensed, easy to tap into on the fly, and displays much-needed information in real time.
But, with every new icon app added, things become a little more cluttered and usability takes another hit. Fortunately, it’s possible to edit the menu bar to rearrange and remove icons so that it’s able to suit your needs at any given moment. Read on for the best ways to make the menu bar on Mac truly yours.
A tool that perfects menu bar
Rethink the menu bar with this app. Bartender customizes one of the main parts of Mac's interface, efficiently.
How to rearrange items in menu bar
How much freedom you have to rearrange items in menu bar depends on which version of macOS you’re running. The users of macOS Sierra and later definitely have more creative license here than others. And if you are not there yet, it’s time to upgrade to the newest macOS anyway.
Rearranging menu items in macOS
To move an icon in the menu bar, hold Command (cmd), then click and hold the icon to drag it across the bar. Simple.
There are no restrictions here — feel free to move icons anywhere you see fit. Don’t like the clock all the way over there on the right-hand side? Drag it to somewhere more suitable. Want to place the Setapp icon over to the area of the bar once reserved for first-party apps? Do it!
The only icon that cannot be tampered with is the Notification Center. Apple has decided this must remain in the far right corner of the menu, which is fair enough — it looks good there.
Rearranging menu items in OS X versions (El Capitan and older)
Movement of icons in old versions of macOS is reserved for selected apps only: Bluetooth, audio, Time Machine, WiFi, battery, clock, and user switching. Spotlight and Notification Center must stay put, as must all third-party apps.
To move icons around within the designated area, once again hold Command, then click and hold the icon to drag it.
How to remove icons from the top bar on Mac
If there are items in the menu bar that you feel don’t belong there, hold Command, click on the icon, and drag it outside of the menu bar.
Note: this only works for first-party icons.
It is possible to remove third-party icons from the top bar on Mac by clicking on them and selecting “Quit” or “Close,” but this will stop the app from working until you reopen it.
Some apps give the option to remove icons from the top bar on Mac in their settings: [chosen app] > Preferences. However, a lot of apps won’t. To fully customize which icons appear in the menu bar, you should use a third-party app like Bartender.
If you’ve removed the first-party app and you’d like it back on the menu, it can be re-enabled in System Preferences.
How to add icons to the top bar on Mac
If you’re missing a specific system icon in the Mac’s menu bar, you can add it through System Preferences. For instance, to enable the Language icon, select Language & Region in the preference pane, click Input Sources, and check the box next to “Show Input menu in menu bar.”
Add menu bar extras
Because the menu options like Clock and Ink can’t be found in System Preferences, you might need to use the System folder as well:
- Open Finder.
- Select Go > Go to Folder from the menu bar.
- Type a path: /System/Library/CoreServices/Menu Extras.
- Double-click an item and it will instantly appear in your menu bar.
You can easily remove any of the icons by holding Command and dragging it outside of the menu bar as described above.
How to customize and tidy Mac menu bar
It’s possible to change the look of the default menu bar items in System Preferences and third-party apps’ ones in their respective preferences. Most of the time, you’ll be able to at least switch the color to black and white.
Change how the date and time are displayed in the menu bar
In the right corner of your menu bar, click on date and time to Open Date & Time Preferences. Go to the Clock tab and unlock the preferences by entering your administrator password, so that you can make changes. To customize the look of the clock, choose between two different time display options: Digital or Analog. You can also tick the boxes for “Show date” and “Show the day of the week.”
To instantly toggle between different display options, click on date and time in the menu bar and choose “View as Analog” or “View as Digital.”
How to use your battery status on Mac
Keeping track of your battery life from the menu bar takes a few simple actions and yet is vital to Mac’s performance.
Click on the battery icon and tick Show percentage to see how much battery power you have left. In the same drop-down menu, you can check the programs that are using significant power in case your battery is draining too fast. To optimize battery usage, select “Open Energy Saver Preferences” and adjust sleep settings.
Toggle between fast user switching icons
There are three different options on how the Fast User Switching menu can be displayed in your Mac’s top bar – as a full name, account name or icon. Here’s how you do the customization:
- Click on the icon and open Users & Groups Preferences.
- Enter your password to unlock.
- Select Login Options in the bottom left corner of the Users & Groups.
- Go to “Show fast user switching menu” and pick one of the options.
- Untick the box if you prefer to remove the icon from the menu bar.
Show Wi-Fi status in the menu bar
To enable the Wi-Fi icon in your Mac’s top bar, go to System Preferences and select Network. Tick the box next to “Show Wi-Fi status in menu bar.”
How to replace menu bar app icons
If you want to have custom icons in your Mac’s menu bar, there’s a way to replace the default ones. To change the icon of a third-party app, find it in Applications, right-click to open a context menu, and choose “Show Package Contents.” Go to Resources folder to find the defaults – these can be used as templates for the new icons. Once you have a custom icon ready, simply copy it into the same Resources folder.
The same works for system icons, except you won’t find all of them in Applications. Here’s the path for you to take: Hard Disk > System > Library > CoreServices > Menu Extras. Once you’ve found the item you need, click on “Show Package Contents” and navigate to the icon via [MENUITEM.menu] > Contents > Resources.
In both cases, it’s a good idea to create backups of the default icons before replacing them – just in case you’ll need them later.
Hide menu bar items
One low-key feature on Mac is the ability to auto-hide menu bar. To do this, open System Preferences > General. Check the option to “Automatically hide and show the menu bar” and the menu bar will immediately disappear.
To get the menu bar to show up again, simply move the cursor to the top of the screen and hold it there for a second. Now you can access the menu whenever you need it and enjoy an extra bit of screen real estate when you don’t.
Customizing the menu bar with Bartender
If you want more control over how the menu bar looks and what it does, you should consider using the Bartender app.
Bartender lets you hide icons without quitting and rearrange icons in a way that better suits how you use the menu bar — something particularly useful if you’re running an older version of macOS.
App icons can be displayed when updating, shown in the Bartender Bar only, or hidden completely and accessed easily using a built-in search function. It’s even possible to toggle through and activate items using keyboard navigation.
If you’re someone that prefers a minimalist look, the app gives you the option to remove the Bartender menu item, leaving you with a crisp, clean menu bar.
Overall, the Mac menu bar is there to help you improve your productivity by giving you quick access to the apps and tools you need. Using the tips above, you can customize the menu bar in a way that works for you. Best of all, you can get full access to Bartender and over 200 more high-quality macOS apps on Setapp, with a 7-day free trial to get you started. So why not get your menu bar organized now?
Class: Menu
Create native application menus and context menus.
Process: Main
new Menu()
Creates a new menu.
Static Methods
The Menu
class has the following static methods:
Menu.setApplicationMenu(menu)
menu
Menu | null
Sets menu
as the application menu on macOS. On Windows and Linux, themenu
will be set as each window's top menu.
Also on Windows and Linux, you can use a &
in the top-level item name toindicate which letter should get a generated accelerator. For example, using&File
for the file menu would result in a generated Alt-F
accelerator thatopens the associated menu. The indicated character in the button label then gets anunderline, and the &
character is not displayed on the button label.
In order to escape the &
character in an item name, add a proceeding &
. For example, &&File
would result in &File
displayed on the button label.
Passing null
will suppress the default menu. On Windows and Linux,this has the additional effect of removing the menu bar from the window.
Note: The default menu will be created automatically if the app does not set one.It contains standard items such as File
, Edit
, View
, Window
and Help
.
Menu.getApplicationMenu()
Returns Menu | null
- The application menu, if set, or null
, if not set.
Note: The returned Menu
instance doesn't support dynamic addition orremoval of menu items. Instance properties can stillbe dynamically modified.
Menu.sendActionToFirstResponder(action)
macOS
action
String
Sends the action
to the first responder of application. This is used foremulating default macOS menu behaviors. Usually you would use therole
property of a MenuItem
.
See the macOS Cocoa Event Handling Guidefor more information on macOS' native actions.
Menu.buildFromTemplate(template)
template
(MenuItemConstructorOptions | MenuItem)[]
Returns Menu
Generally, the template
is an array of options
for constructing aMenuItem. The usage can be referenced above.
You can also attach other fields to the element of the template
and they will become properties of the constructed menu items.
Instance Methods
The menu
object has the following instance methods:
menu.popup([options])
options
Object (optional)window
BrowserWindow (optional) - Default is the focused window.x
Number (optional) - Default is the current mouse cursor position.Must be declared ify
is declared.y
Number (optional) - Default is the current mouse cursor position.Must be declared ifx
is declared.positioningItem
Number (optional) macOS - The index of the menu item tobe positioned under the mouse cursor at the specified coordinates. Defaultis -1.callback
Function (optional) - Called when menu is closed.
Pops up this menu as a context menu in the BrowserWindow
.
menu.closePopup([browserWindow])
browserWindow
BrowserWindow (optional) - Default is the focused window.
Closes the context menu in the browserWindow
.
menu.append(menuItem)
menuItem
MenuItem
Appends the menuItem
to the menu.
menu.getMenuItemById(id)
id
String
Returns MenuItem | null
the item with the specified id
menu.insert(pos, menuItem)
pos
IntegermenuItem
MenuItem
Inserts the menuItem
to the pos
position of the menu.
Instance Events
Objects created with new Menu
or returned by Menu.buildFromTemplate
emit the following events:
Note: Some events are only available on specific operating systems and arelabeled as such.
Event: 'menu-will-show'
Returns:
event
Event
Emitted when menu.popup()
is called.
Event: 'menu-will-close'
Returns:
event
Event
Memu Macos Catalina
Emitted when a popup is closed either manually or with menu.closePopup()
.
Instance Properties
menu
objects also have the following properties:
menu.items
A MenuItem[]
array containing the menu's items.
Each Menu
consists of multiple MenuItem
s and each MenuItem
can have a submenu.
Examples
An example of creating the application menu with the simple template API:
Render process
To create menus initiated by the renderer process, send the requiredinformation to the main process using IPC and have the main process display themenu on behalf of the renderer.
Below is an example of showing a menu when the user right clicks the page:
Notes on macOS Application Menu
macOS has a completely different style of application menu from Windows andLinux. Here are some notes on making your app's menu more native-like.
Standard Menus
On macOS there are many system-defined standard menus, like the Services
andWindows
menus. To make your menu a standard menu, you should set your menu'srole
to one of the following and Electron will recognize them and make thembecome standard menus:
window
help
services
Standard Menu Item Actions
macOS has provided standard actions for some menu items, like About xxx
,Hide xxx
, and Hide Others
. To set the action of a menu item to a standardaction, you should set the role
attribute of the menu item.
Main Menu's Name
On macOS the label of the application menu's first item is always your app'sname, no matter what label you set. To change it, modify your app bundle'sInfo.plist
file. SeeAbout Information Property List Filesfor more information.
Setting Menu for Specific Browser Window (LinuxWindows)
The setMenu
method of browser windows can set the menu of certainbrowser windows.
Menu Item Position
You can make use of before
, after
, beforeGroupContaining
, afterGroupContaining
and id
to control how the item will be placed when building a menu with Menu.buildFromTemplate
.
before
- Inserts this item before the item with the specified label. If thereferenced item doesn't exist the item will be inserted at the end ofthe menu. Also implies that the menu item in question should be placed in the same “group” as the item.after
- Inserts this item after the item with the specified label. If thereferenced item doesn't exist the item will be inserted at the end ofthe menu. Also implies that the menu item in question should be placed in the same “group” as the item.beforeGroupContaining
- Provides a means for a single context menu to declarethe placement of their containing group before the containing group of the item with the specified label.afterGroupContaining
- Provides a means for a single context menu to declarethe placement of their containing group after the containing group of the item with the specified label.
By default, items will be inserted in the order they exist in the template unless one of the specified positioning keywords is used.
Examples
Template:
Menu Marcos
Menu:
Template:
Menu:
Template:
Memu App Player Free Download
Menu: