Dark L&F and Notifications
"Revivius" <[email protected]>
| Newsgroups | gmane.comp.java.netbeans.modules.openide.devel |
|---|---|
| Message-ID | <[email protected]> |
OK it is all clear now. There are two NotificationImpls: 1- In core.ui. This is the class being called when I was (also Peter) was debugging a sample NetBeans Platform application as can be seen in my attachment 1 and screenshot from Peter. It does not wrap detail text in <a> tag if given action is null and uses hardcoded blue if given action is not null: http://hg.netbeans.org/main-silver/file/426ac2a45600/core.ui/src/org/netbeans/core/ui/notifications/NotificationImpl.java#l181 2- In notifications module as you pointed out. It wraps detail text in <a> tag and uses 'nb.html.link.foreground' for foreground of the button (And this is the class that was fixed with the issue Peter found in Bugzilla). As far as I can see, it is an optional module and it contains the NotificationCenterTopComponent which is actually being used in IDE itself. http://hg.netbeans.org/main-silver/file/8bc9b4dff3ad/notifications/src/org/netbeans/modules/notifications/center If I am correct, a bare minimum NetBeans Platform Application will not contain notifications module and hence implementation in core.ui will be used (without an <a> tag and with hardcoded color). That is why screenshots from Peter and me under Darcula LAF contains non readable text because both are from bare minimum sample NB Platform applications and your notifications are readable under Dark Metal/Praxis LAF because you are using mentioned LAFs in the IDE itself (or at least in an application containing notifications module). So, long story short: 1. There are two mostly identical classes, one was fixed (the one in notifications module) but other was not (in core.ui module). 2. We can create an issue for the one in core.ui or request them to be split into a common implementation that will be used by both core.ui and notifications modules.