It seems that closing xft fonts on reload is a bad idea, but this seems
to result in a memory leak. As far as I can tell, the leak doesn't grow
beyond the initial allocation however.
This patch adds the possibility to use a argb visual for the conky
window. Adding a boolean configuration entry 'own_window_argb_visual'.
the 'set_transparent_background' method sets the alpha bytes of the argb
color for transparency, instead of pseudo transparency. This patch
would close following feature request:
https://sourceforge.net/tracker/?func=detail&aid=1563931&group_id=143975&at
id=757311 and would be a workaround for some reported transparency bugs
(https://sourceforge.net/tracker/?func=detail&aid=1968923&group_id=143975&a
tid=757308 for example)
Signed-off-by: Brenden Matthews <brenden@diddyinc.com>
All ERR()'s are renamed to NORM_ERR() and box to mbox so that they don't
clash with things in ncurses.h .
Ncurses is enabled by default when building conky but can be disabled with
--disable-ncurses .
At the moment configure doesn't check if ncurses is actually available.
I'm adding support for ncurses so that we can make as much things as possible
that are only available in X11 also available in console in the future.
the default config should now run without memleaks, valgrind will
still report memleaks caused by the own_window-lines and the xft-lines
(in some cases) but those are caused by code that's not part of conky
Closing the X display on reload caused some weirdness. We can just
leave it open between reloads. For whatever reason we had a macro
inside quotes for the default net device.
As a side effect, font and colour specific stuff got outsourced, too.
This is because the apropriate functions are used by conky.c as well as
specials.c, so they should be kept on their own.
In the long term I hope for positive impact on the X11 integration mess.
(Take e.g. the mass of X11 ifdefs cluttering conky.c.) Though this
commit contains no optimisations in this direction, just plain
outsourcing, to ensure minimised (intended: none) changes to conky's
interface behaviour.