eboxy cannot determine what resolution fullscreen should use, so if you want anything other than 640x480 (the default) you will need to specify it with the --width (or -x) and --height (or -y) options. You can also specify this in the configuration file. With --fullscreen (or -f) specified, eboxy will attempt to change to the specified screen resolution if it isn't already active, if the resolution is supported by your system. Note that SDL will use the best available output method (X11, framebuffer, etc.). See also Controlling video output.
If you are using eboxy full-screen with LIRC in X, there is a problem that you may need to work around. With certain window managers, or no window manager at all, focus may not be correctly passed to other applications when you use any of the exec* script commands, and so LIRC commands won't be ignored while the external program is running, which could be bad if you use some of the same remote buttons in external applications as you do in eboxy. So far the only workaround for this is to use a window manager that transfers the focus properly - twm does not work, but fvwm2, papuawm and KDE's kwm are known to work. If you use fvwm2, you will need to use a configuration similar to the following (in ~/.fvwm2rc):
Style * NoTitle, BorderWidth 0, HandleWidth 0, ClickToFocus
ClickToFocus is the most important setting - the others just reduce the interruption a second or two after eboxy regains focus, as it becomes full-screen again (unfortunately the transition is still visible, however).
The mouse cursor may interfere with your GUI whether you're using it or not. If the GUI starts with the cursor over the top of a button then that button will be selected first. If you don't like this (you probably won't if you're not using the mouse) then specify the --hidecursor (or -h) command line option, which both hides the mouse cursor and moves it to the top left hand corner of the graphics area before bringing up the GUI.
If you modify an image file that eboxy is using while it is running, eboxy will not reload that image even if you reassign the image property of the widget that is displaying it - images are cached, as are fonts. The only time the cache is reloaded is if you use the "exechide" command. However, if you wish to reload an image being displayed in a picture widget, you only need to call its reloadimage() method in a script and the image will be reloaded from disk.
If you overlap two button images, you won't see PNG transparency working the way you might expect. Images are transparent onto the background only. It's generally best to avoid overlapping widgets at the moment.
Newer versions of libxml2 do not seem to validate against the DTD properly (ie, invalid elements are allowed). Future versions of eboxy will do the validation internally.
The script parser produces somewhat unhelpful error messages.
eboxy does not use the attribute defaults defined in the DTD - these are hardcoded into the application.
There have been some reports of flickering when using eboxy with framebuffer output. This is due to drawing issues with SDL_gui, and will be fixed when eboxy changes over to a different GUI library.
When eboxy hides its GUI (ie, when exechide is used in a script) it in fact unloads everything from memory, deinitialises the graphics library and then waits while the program runs. When the program finishes, eboxy loads itself back up. You will always get back to the correct page, but the "state" will be lost. I hope to correct this in the future if I can figure out a better way of doing the hiding.
eboxy does not purge its image/font cache while running unless exechide is called. This could be an issue if you are designing an image browsing screen and load lots of images.
The autoconf/automake build setup for eboxy is slightly broken, in that make dist doesn't really work properly and the --enable-debug option to configure doesn't work either. To build with debugging symbols, just run the following:
CXXFLAGS=-ggdb ./configure
(yes, that's all on one line). Then run the normal make and make install.