Closed jiengup closed 4 months ago
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 jordanbaird.dev@gmail.com 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! :)
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! 😎
@jordanbaird I just tested your build. My device is MacBook Pro 14 M1 Pro with macOS 14.5
Works good so far, here my experience to you concrete testing points:
Apart from that I just noticed:
Thanks for the update! Testing on a Macbook Pro 14" M1 Pro, 14.5 - some issues:
With appearance: split, the bar is now cut off (this showed up as soon as I launched the new app, before I enabled secondary bar, so may be related to some other change). Playing around with this has it cut off in various locations (especially as screen recording icon comes and goes). You can click on the hidden section and it's clear the hidden items are receiving the click as their dropdowns show - even ones further along than you'd expect if it's just the cutoff for the rounded corners.
If secondary bar is enabled when the hidden items have already been shown / are currently showing, they're then duplicated in both locations - and stay visible in the menu bar even when the show/hide button is repeatedly pressed (note using the ellipsis as separator button).
(This may be outside your current objective, and is minor besides) - with bartender the secondary bar showed up below the show/hide button, with Ice it seems to always show up on the far right.
Thanks!
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).
Not for me. Always shows on my main display. My external display which is set as main display.
Icons are always showing as dark in the Ice Bar for me. light mode or dark mode
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).
This works not for me, so same behavior as described by jonasjelonek.
In addition to that, the 2nd bar has a strange ratio when I open it from the external screen, then it shown like this on the macbook screen
New beta:
I'm not in a spot where I can test on an external display at the moment, so bear that in mind.
This build includes the following changes:
Also, I think I will be going with "Ice Bar" for the name.
Excellent work @jordanbaird - it works great on primary screen with notch 🙌🏼
The secondary bar is perfect.
The external screen's secondary bar appears and works but doesn't appear in the correct aspect ratio:
Ice Bar is a great name.
Well done for getting this out so quickly 👌🏼
@jordanbaird - some additional feedback that might help you which I just noticed:
When I use the app 'zNotch' [https://github.com/zkondor/znotch] which changes the resolution on the primary screen to 'get rid' of the notch, the Ice's secondary bar icons are the wrong aspect ratio (like the above screen shot).
However if I then close and reopen Ice, the icons in the secondary bar are then the correct aspect ratio - on both primary and secondary monitors 👌🏼
(I've only started using zNotch recently after dropping Bartender because it's simply impossible otherwise to access the icons 'behind' the notch which MacOS just permanently hides - but hopefully now I can stop using it and just use Ice's secondary bar. FYI: it appears zNotch may just change the resolution to a slightly non-standard resolution to drop the menubar down below the notch.)
@scp Thanks for the info! Does the layout interface (Menu Bar Items
in Ice's settings) also display items in an incorrect aspect ratio? When opening the settings window on both screens?
@jordanbaird - primary screen is fine.
External screen is just the bar itself:
Hey @jordanbaird thanks for the beta package. Do you have any idea when this will be released for real?
The author is already adapting very quickly, so don't rush. Based on the discussion, it should be released soon. @jordanbaird Thank you so much for your hard work in developing and maintaining this. We're really looking forward to it. 🫡
I tried the latest beta posted (0.10.0-beta.3) on a 27" iMac. I'm using the Chevron option as the Ice icon.
The Menu Bar items section of the settings doesn't really work. The Hidden and Always-Hidden sections are both blank. When I drag icons from the Visible section to the Hidden section, they either disappear or they appear in the Hidden section briefly before disappearing. This also causes the large "Hidden" chevron to move to unexpected places on the menu bar (once it moved to the left of the smaller "Always-Hidden" chevron).
On a side note, I had an issue with 0.8.0 where changing the Ice icon would move those chevrons to unexpected places or make the Ice icon invisible. I'm uncertain if that was resolved in 0.9.0.
When I fix things by Cmd+drag on the actual menu bar, all the icons that should be in the Hidden section appear properly in Menu Bar Items, but after some time, that section becomes blank again. I did not test the same with Always-Hidden icons.
When I switch on "Use secondary bar" I get a blank secondary bar that's looks like it's the correct width for all of my Hidden icons, but without the icons there.
Happy to help debug if required.
How does a setting for moving the application settings to the secondary bar sound?
Is this something doable?
It now works that the secondary bar is displayed on the external display in the correct cases. And I can also properly drag the secondary bar. So that seems to be fixed.
But remaining issues I noticed:
The second beta build from https://github.com/jordanbaird/Ice/issues/1#issuecomment-2166955300 does now work on both internal and external display.
Unfortunately the aspect ratio does not yet match both displays.
Example from the internal MacBook Pro 16" display:
Example from an attached Studio Display:
New beta:
Icons in secondary bar are still wrong colour for me
Also I expected Secondary Bar to only appear when there wasn't enough room to show all icons? Not sure how it worked in Bartender.
My settings
Instead of showing this popup when trying to move the clock, make the clock non movable or show it only on the first time.
Ice Bar does only work for hidden apps. If you hover over the settings icon in the menu bar, Ice Bar appears. Unfortunately this doesn't make much sense as its a completely new bar.
Make Ice Bar appear when you have your mouse on the entire menu bar and then much longer. Ice Bar should be treated differently than the hidden and always hidden section. Call it Ice Bar section with the option to use hidden and always hidden section for the Ice Bar. You should be able to make it stay permanently and make it movable or add three options. Center, right side and left side. Now you are only able to use either Ice Bar or add to menubar.
An issue did occur when I tried to click on an app icon in the icebar while the menu bar was completely occupied by application settings. Ice doesn't scan or remove the application settings temporarily which leads to the icon not being added to the menubar. You see it appearing and then get removed by macOS.
Another issue I noticed is when using a second monitor icons quickly disappear after getting added.
Further note while using BetterDisplay and Ice the focus on the menu bar shifts to the active monitor. Its greys out, I have to actively click on the menubar to change the focus. Is this something changeable?
I would appreciate adding Top Notch support.
Apps that change size appear like this in the Ice Bar:
While they should appear like in the preview:
Thanks so much for implementing this! Been using iBar recently but finally I can switch away.
A few observations compared to iBar that Ice could replicate to make a better experience:
Super excited for this, thank you for implementing it!
Here are a couple of bugs I noticed:
I'm also seeing the split bar cutting off icons, an easy way to test this would be using the built in battery indicator and enabling show battery percentage in settings:
Also noticed some items getting warped and icons that are dynamically changing are not updating in the secondary bar:
https://github.com/jordanbaird/Ice/assets/551858/01299810-5294-40b7-8034-daebaf1570dd
Suggestion: centre the bar under the Ice button.
For those using a mouse to see the hidden icons, it's better if the bar is right under Ice's button than to have to go all the way to the right to interact with the bar (keep in mind that the Ice icon will be used in different positions and the bar will have different widths).
Probably not something that must be implemented right away, but it's an idea for the future. Maybe it could be enabled/disabled with a setting? I assume some prefer if it's aligned to the right.
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.