UeharaYou / HiddenBar

An ultra-light MacOS utility that helps hide menu bar icons
Other
125 stars 9 forks source link

[FEATURE] App-specific default location for new statusbar items #4

Open bonassifabio opened 1 year ago

bonassifabio commented 1 year ago

Hi, thank you for maintaining this wonderful app!

A very useful new feature would be to allow the user to choose where new statusbar items are placed by default. Ideally, this choice could be specific to each application. This idea is justified as below.

Problem

There are applications that create temporary statusbar elements. An example is the Given application: with each upcoming event, it creates an element in the statusbar containing the event information. Unfortunately, this item is hidden by HiddenBar by default: its location is not stored since a new statusbar item is created for each event.

This issue is well known for the original hidden app, see

Ideal solution

Several solutions could be adopted. A first (already very useful) solution would be to allow the user to choose where new statusbar elements should be placed (regardless of the application that created them). An improvement to this option would be to make the choice app-specific, that is, to allow the user to choose (on a per-application basis) where to place the new statusbar elements.

UeharaYou commented 1 year ago

I have been working on this issue for a while. But same as #3, I encounter some difficulties implementing these features. Right now I have already been able to capture images of status bar items, but so far I can't rearrange their orders via CoreGraphic APIs, nor effectively finding their AXUIElement, not mentioning the SystemUIServer stop rendering them when they goes off-screen. This is just the first step for just showing the items in a separated view, and it already requires me to further dig down towards those undocumented APIs in hope to find a solid solution.

So sorry for keeping you all waiting, you will be updated as soon as any progress is made.