帮助监控应用徽章的 Mac 应用

娃娃是一个Mac应用程序,帮助你赶上重要的信息!

macOS中,当您隐藏Dock,打开全屏窗口并专注于任务时,感觉真的很棒。

但我们不是生活在一个理想的世界里,你的队友可能随时需要你的帮助,当你处于专注模式时,偶尔你只是忘记回应

像MailSlackMicrosoft Teams这样的消息应用程序甚至根本不提供菜单栏图标,因此,如果您在全屏窗口中工作,或者查看另一个无法显示Dock的额外监视器屏幕,您将无法注意到未读消息!

基本用法

(对不起,通知中心确实注意到了你,但他们很快就会在短时间内关闭,如果你错过了,你就错过了这条消息)

通知中心

It would be great if we could put the icon and badge of these apps into the Menu bar, that way we can always easily notice new messages across screens, just like this:

Show case

Doll?

In my favor animation 《Darker than dark》, if a Contractor use his power and never willing to pay the cost, eventually he will lose control of his power, become an emotionless Doll.

If we use too much focus power without paying the cost, what will we become >>__<<.

Install

You can download the latest dmg file from here
Minimum system requirement: macOS 11.0 (Big Sur)

How to use?

It’s simple, first you search and select the app you want to monitor:

Basic usage

Then Doll will ask for your permission to use the Accessibility API:

ask-for-permission.png

Please make sure you grant that permission to Doll.app otherwise nothing will be monitored!

grant-permission.png

Done, you are all setup!
Doll now will monitor all the badge update in the Dock, and sync the numbers into the menu bar!

running.png

I want to monitor more apps!

You get it for free!

multiple.png

I want to change the Monitor app

If the monitored app is running, click on the menu bar icon will simply open that app.

But if you want to change stuffs, just hold the “Option key(⌥)” and click on the icon.

config.png

Security concern about the permission?

Never! Ever! Trust! Anybody! in Internet!

Doll is open source, you are free to download, review, modify and compile your own version of the app, go ahead and happy coding~

How the app works?

Doll utils the macOS Accessibility API, it will sync the latest badge text to menu bar from every Monitored app in the Dock element.

Due to the limitation of Accessibility API(Can’t watch for element’s attribute value change), Doll has to sync badges by every second(Yep, the infamy Polling style).

But don’t worry about the performance, after all the synchronization happens only 864000 times per day, and all it does is just read and set few element’s text, that’s an operation executed less than 1ms!

If you found any potential Bug or Performance issue, feel free to submit a PR!

GitHub

点击跳转