We change from Growl to Notification Center
Introduction
With the release of MacOSX 10.8, the Notification Center, aka the Notification Center, was introduced to the public. As soon as you receive new mail or, for example, the download in Safari ends, you see a pop-up window in the upper right corner with a notification informing you of this. Also, by swipe with two fingers to the left (or by hotkey), you can expose the notification panel, which is almost identical to that in iOS.
Problem
Everything would be fine, but there is only one thing: since 2004, all applications have been using open-source Growl for notification purposes and are not in a hurry to switch to a new system. In particular, Skype, Adium, Transmission and many many other everyday applications.
Decision?
Hiss is one of the very first solutions to hit the net. And the last one. Hiss catches notifications instead of growl and sends them on his behalf to the Notification Center, which results in a not-so-pretty picture:
As you can see in the screenshot, the result does not look like expected. Also, there are no individual settings for applications. The option is working, but not convenient.
Better solution
This summer I decided to correct the situation and, not finding any solutions to the problem on the Internet, in addition to promises to release growl2, I started writing CentralNotifier.
What is it?
Central Notifier is a small application that is injected with SIMBL into everything that moves in the system (like a maximizer that adds lion's fullscreen to all applications that are possible). If the application supports growl, then after injection all notifications intended for growl will be sent to the Notification Center. As a result, we have this picture:
As well as settings for applications:
And what's the catch?
To work it works, but is at an early stage of development. I no longer have time to deal with this project, and I got accustomed to the current bugs. I have been working flawlessly for a month now, I decided to share it with the public and I will be very happy if someone takes the project under their wing.
Installation
1) Install SIMBL
2) Download and unpack cl.ly/2l0O2w1m3v3H
3) CentralNotifier.bundle -> ~ / Library / Application Support / SIMBL / Plugins /
4) SIMBL.osax -> / Library / ScriptingAdditions *
5) DoubleClick CentralNotifier-PrefPane .prefPane
6) Rebooting without a tick about saving the state of applications
* is a modified injector (which violates the author’s request to rename his brainchild for any changes). If you want to be injected into applications that do not have an icon in the dock, you need it. No - everything works with regular SIMBL. For any problems with the modified injector, please do not contact the SIMBL author
Source code
Sources are on GitHub . Do whatever you want with them, while preserving the original authorship for me.
Known bugs
1) After a reboot, sometimes you have to restart all applications for injection to occur. This happens because the injector starts later than the applications themselves. A great example in the screenshot below. Each reboot starts with killall HardwareGrowler.
2) To apply settings to application notifications, you need to change them in prefpane, exit it and then restart the application itself.
3) The Forget Application button is obtained for beauty. To remove the application, you need to edit the playlist with pens in ~ / Library / Preferences
4) If the application was turned off after sending notifications, then these notifications are no longer pickable (the one who is responsible for them no longer exists)
5) No more jambs for a month.
Or can wait growl2?
My personal opinion: Either they will do as Hiss, or they will not be allowed into the AppStore. To post notifications on behalf of another application, you must either be injected into it (you can forget about the appstore right away) or do magic kungfu (the chance with which you can go to the same appstore is very small). I think it would be nice to continue developing CentralGrowler, because I don’t see more options for redirecting notifications.
I hope that my experience will be useful to someone.
PS
I forgot to mention in the article, and decided to add it here, to the very bottom. CentralNotifier completely transfers the feedback: if you poke a notification, the application will respond the same way if everything worked through Growl.
Some more screenshots