TrayIcon blocks the U++ applications (windows and widgets does not respond to any mouse or keyboard actions, application simply freezes) when used with the GTK backend.
So neither Eyecare nor any other app using TrayIcon works when compiled with the GTK backend. (As a side note, Eyecare has timer problems on other backends too).
Tested on Arch Linux (linux 3.12-8, KDE 4.12.1, GTK2 2.24.22)
On GTK backend, trayIcon behaves correctly if it is simply instantiated within a window and not put into its own event loop (without TrayIcon::Run(), I mean). gtk_main() seems to block the windows if the TrayIcon::Run() is invoked. For example, the EyeCare example and its trayicon works again as expected if I call EyeCare::Run() (after necessary albeit small corrections done in code)