[Feature Request] notch macbook support.
Beneficial application!
Do you consider designing for a notch MacBook's built-in screen?
When we have so many menu bar icons, we can't see all the icons using ice's hidden strategy nowadays.
It's like:
On my 27 inch monitor:
But on built-in screen:
because of Apple's genius notch design.
This is something that could definitely be supported, but I don't have access to a MacBook with a notch to be able to work on it. I'll add it to the roadmap for the time being, and hopefully it can happen soon.
I think it would be cool if we got an option like Bartenders "Bar" - Photo:

I think it would be cool if we got an option like Bartenders "Bar" - Photo:
This is also on the roadmap, but can't be implemented until I work out how to implement individual menu bar item movement. Right now, Ice can only move items in sections. I have a semi-working implementation, but it's quite complicated with lots of failure points that need to be addressed.
I'm waiting for notch support as well. Once this issue gets resolved, I'll try this app out!
Notch support would definitely be great: I miss some app icons behind it 😞
For those additional menu bars, its only possible to add them to the menu bar and then to be opened as far I know. This isn't that fluent, but a solution for Macbooks with a Notch
Beneficial application! Do you consider designing for a notch MacBook's built-in screen? When we have so many menu bar icons, we can't see all the icons using ice's hidden strategy nowadays. It's like: On my 27 inch monitor:
But on built-in screen:
because of Apple's genius notch design.
If its possible to show menu bar items on the left, then the width of the notch has to be recorded.
Now that Bartender is exhibiting strange behavior, notch support from ICE would be great.
Please move this to the top of the backlog. Many people want to move from Bartender at the moment, but this is a must-have.
the people have spoken
Another space-efficient approach for when the notch prevents all extra items from showing could be for those extra items to replace the unhidden items when revealed, instead of showing in addition to those items. That creates some extra space to show hidden icons. I use it this way in bartender currently.
I hear everyone. This is definitely in the pipeline. The main thing blocking this is that Ice needs to be able to move individual menu bar icons. When an icon is clicked in the secondary bar, it needs to be temporarily moved from whichever section it is in to the visible section so it can show its menu. I have this mostly working, but there are certain apps, such as BetterTouchTool, that block the proper events from being sent to the items. A temporary workaround could be to disable the feature when BetterTouchTool is running.
Is there anything we can support you with in this, besides the financial support? This is currently the only thing that unwillingly prevents me from moving from Bartender to Ice, since I also have the Notch.
Maybe an alpha/beta release would be something? Since you said it's mostly working we could test it, and discover and sort out remaining issues.
I would also like to volunteer as beta tester if that helps. MBP 14 with notch. Would it not be as simple as providing a spacer at the coordinates of the notch? Are there any API's to leverage here?
I can help in beta testing too. MBP 14 (M3 - Sonoma 14.5)
Also willing to test on my notched 14" MB Air and on a 27" 1440p monitor
Would it not be as simple as providing a spacer at the coordinates of the notch? Are there any API's to leverage here?
My thoughts exactly. If so, we would need to figure out if the current display has a notch (hopefully as simple as an api call) and how big it is (are they all the same?)
@jordanbaird developer of BetterTouchTool here, what kind of events are you seeing blocked by BTT? Would be happy to fix or help with that. (Bartender also seems to be able to do this while BTT is running, but I haven't checked the exact events it uses yet)
It would be amazing to have this feat. I want to get rid of Bartender asap. 🙏
@fifafu Thank you for the help! I haven't tracked down exactly which of these it is, but it's one (or all) of mouse down, mouse dragged, and mouse up. It results in an event tap that listens for these events timing out. Would you be able to email me at [email protected] so we can talk in more detail about what's going on?
Sure I'll ping you! But isn't the general problem that you can only target items that are "on-screen" with these events? I can easily programmatically move around the items that are visible, but the hidden ones that are pushed off screen by either setting the status item length to a high value or because there are just too many, these I'm unable to access using standard events.
@fifafu I've found a workaround for that. But yes, that was a problem early on.
Good news -- @fifafu and I were able to solve the remaining problems with individual item movement. All that's left now is to implement the secondary bar
We really appreciate your efforts @jordanbaird & @fifafu ✌🏻
@jordanbaird as a fellow developer (though mostly python these days) I'd be glad to help test and send logs or do experiments. Yes my ObjC/Swift is rusty, but I should be able to do some basic experiments.
Just gonna through this out there: if you change your screen size to a non-standard size the stupid top notch goes away, and you can see everything.
i previously tried to use TopNotch to remove it, and that stopped working when I upgraded to M3 / Sonoma, but I found that workaround after a lot of googling
I'm using the tool zNotch temporary hide/show the notch, together with this handy shell script:
$ cat bin/toggle-notch
#!/usr/bin/env sh
open 'xyz.kondor.znotch://v1/manage?action=toggle'
That gives me access to all my menu items in a pinch until ice has better support.
I have something that I think works pretty well. I'll attach a build for anyone who wants to try it out. In addition to the secondary bar, you can now rearrange your menu bar items directly within Ice's interface! I would appreciate anyone's feedback! :)
Some known issues:
- The purple screen capture icon appears in the menu bar quite often. This is because Ice needs to capture images of the individual menu bar items to display in its interface (these and portion of the desktop background below the menu bar are the only things Ice ever captures). I'll be optimizing this.
- Rapidly switching spaces can cause the icons to disappear from the secondary bar. A workaround if this happens is to switch to another space, wait for a few seconds, then switch back.
- Menu bar items that are temporarily shown by clicking them in the secondary bar are currently rehidden after a fixed amount of time. This will be changed to use a dynamic check, similar to Ice's smart autohide.
- The displayed menu bar items (both in the secondary bar and the arranging interface) can sometimes get out of sync with the actual items in the menu bar.
Things to test:
- We need to make sure that the current method of hiding/showing items works the same as it did. I had to rework some of the internals to get the two methods to play nice with each other.
- When an external display is connected, the secondary bar should appear on the currently active display. I have not tested this, so it would be great to have confirmation that it works (or doesn't).
Other things:
- Is the "Secondary Bar" name okay? Or would "Ice Bar" be better?
Nice! Fyi, to get rid of the purple screen recording icon you can start the app like this (assuming it's in the /Applications folder):
screen -dmS Ice /Applications/Ice.app/Contents/MacOS/Ice
I vote for "Ice Bar" - sounds cool! 😎
But on built-in screen:
because of Apple's genius notch design.