2005-05-30  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c:
	Completed drop-down menu for combo boxes...

2005-05-26  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/tty_guardian.c (has_controlling_process)
	(is_getty):
	Made tty_guardian recognize qingy-spawned shells.

2005-05-19  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/tty_guardian.c:
	Fixed some issues in session locking regarding
	moving user to the appropriate tty when an X
	session is active.

2005-05-18  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/tty_guardian.c (ttyWatchDog):
	Fixed small bug in session locking where user password
	is asked when you exit an X session...

2005-05-16  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/directfb_mode.c (handle_mouse_event):
	Implemented mouse wheel actions for combo boxes...

	* media/Makefile.am (settings):
	Corrected small glitch in commented-out section in
	default settings file...

	* src/DirectFB/objects/combobox.c (ComboBox_Click):
	Implemented clicking on non-upper-lower-triangle areas
	of the scrollbar. I should also implement dragging, but
	do not intend to, at least right now. What I should
	implement is mouse wheel actions...

2005-05-12  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c:
	Now we correctly plot the lateral scrollbar, still
	have to handle its input events...
	...now clicking on the top and bottom triangles work...

2005-04-19  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c:
	Paving the ground for lateral scrollbar...

2005-04-15  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/directfb_mode.c,
	* src/DirectFB/objects/combobox.c:
	Added support for changing (and select) highlighted item
	in combo boxes using arrow keys, even when the combo box
	is unfolded.

	Now all I need to implement is a side scrolling bar, then
	my combo box will be complete.

2005-04-14  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c,
	* src/DirectFB/objects/combobox.h,
	* src/DirectFB/directfb_mode.c:
	Changed structure of combobox items from
	a double-linked list to an array of pointers:
	Faster, uses less memory, and simpler to
	manage...
	Order session list alphabetically, and divide
	Text from X sessions...
	Made qingy check mouse-over condition on
	comboboxes first, because they might overlap
	with other graphic elements, otherwise they
	took the precedence, making mouseover effect on
	an unfolded combobox look jerky...

2005-04-12  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c:
	Code clean ups, both in form and functionality...
	Made drop-down menu appear downwards or upwards according
	to screen position.

2005-04-11  Noberasco Michele  <s4t4n@gentoo.org>

	* directfb_mode.c (handle_buttons):
	Made buttons un-mouseover-able and unclickable
	when a combobox is unfolded...

	* src/DirectFB/objects/combobox.c:
	I have difficulties believing this myself, but
	we do have a working drop down menu!
	It is still rather crude, but it works :-)

	* src/libraries/tty_guardian.c:
	Reverted latest changes as they introduced quirks, will
	rework them from scratch...

2005-04-08  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/directfb_mode.c,
	* src/DirectFB/objects/combobox.c,
	* src/DirectFB/Makefile.am (qingy_DirectFB_SOURCES):
	Removed listbox.c and listbox.h as they are not
	necessary, after all...

2005-04-07  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c,
	* src/DirectFB/directfb_mode.c (handle_mouse_event):
	Continuing work on drop-down menu...

2005-04-01  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/directfb_mode.c (close_framebuffer_mode):
	Stop shutting down DirectFB gracefully *again*, it is
	faster this way, and it also feels more stable...

2005-03-31  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/session.c (Graph_Login, Text_Login):
	Overwrite memory areas containing sensitive user info
	before quitting...

2005-03-30  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c (start_up):
	Overwrite memory areas containing sensitive user info
	before quitting...

	* src/libraries/session.c (check_password):
	Small code clean up...

	* src/DirectFB/directfb_mode.c:
	Overwrite memory areas containing sensitive user info
	before quitting...

	* src/DirectFB/directfb_mode.c (handle_keyboard_event):
	Small code optimization...

	* src/main.c (start_up):
	Made GUI exit status detection a little smarter.

	* src/libraries/tty_guardian.c (ttyWatchDog):
	Indentation clean ups.

2005-03-19  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/tty_guardian.c:
	Brought tty guardian to a usable state: now it
	checks the tty you came from; if you were logged in as root
	or as same user on the destination tty, it lets you pass,
	otherwise it will ask you to enter either destination user
	or root password. If authentication fails, it will send you
	back to the tty you came from. It also remembers the last
	user who successfully authenticated, so that he will not
	have to authenticate again every time he switches to the
	guarded tty (but if you switch to a tty owned by a third
	user and go back, authentication will be asked again). The
	only drawback is that if you come from an X session in which
	you are logged in as root, it will ask you to authenticate,
	because that situation can not (yet) be distinguished from
	when you come from an unused tty (which is owned by root
	as well)...

2005-03-18  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/session.c:
	Updated handling of utmp/wtmp logging so that
	chrootkit no longer finds deletions in the latter
	when user logs out.

2005-03-17  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c,
	* src/DirectFB/objects/listbox.h,
	* src/DirectFB/objects/listbox.c,
	* src/DirectFB/Makefile.am:
	I need a new object, a listbox, to handle mouse clicks
	on comboboxes... beginning to implement that...

2005-03-16  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/crypto.c:
	Fixed bug that prevented the public/privte keys to stay in
	memory during the duration of the program...

	* src/main.c (start_up):
	Fixed small bug that prevented qingy to pass DirectFB related
	cmd line args to its GUI...

	* src/Makefile.am,
	* src/DirectFB/Makefile.am,
	* src/libraries/Makefile.am,
	* src/libraries/crypto.c,
	* src/libraries/crypto.h,
	* src/DirectFB/directfb_mode.c,
	* src/main.c:
	Moved crypto stuff to separate files.
	Code clean ups...

2005-03-15  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/memmgmt.h,
	* src/libraries/memmgmt.c,
	* configure.in,
	* src/main.c,
	* src/DirectFB/directfb_mode.c,
	* src/DirectFB/Makefile.am:
	Implemented support for encrypting communications
	to a usable state...

2005-03-14  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c,
	* src/libraries/Makefile.am, 
	* configure.in:
	Adding support for encrypting communications between qingy
	and its user interface, trigered by new ./configure option:
	--enable-crypto, enabled by default.

2005-03-11  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c (start_up):
	Pass user authentication data between main qingy and its gui
	trough a securely created temp file instead of a pipe...

2005-03-10  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/combobox.c,
	* src/DirectFB/objects/combobox.h, 
	* src/DirectFB/directfb_mode.c: 
	More work on drop-down menus for combo boxes.

2005-03-09  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c (start_up):
	Added 'no-vt-switching' to the args we pass to DirectFB to
	prevent it from allowing a user to press ALT-F<num> to change
	vts, as we handle that stuff ourselves...

	* src/DirectFB/directfb_mode.c,
	* src/DirectFB/objects/combobox.h,
	* src/DirectFB/objects/combobox.c:
	Started work on adding a drop-down menu to combo boxes...

2005-03-08  Noberasco Michele  <s4t4n@gentoo.org>

	* configure.in:
	Because of theme file modifications, tagged
	version as 0.6.0

	* media/default/theme:
	Updated default theme with the new 
	'default_resolution' stuff

	* src/DirectFB/directfb_mode.c,
	* src/libraries/load_settings.h,
	* media/qingy-mode.el,
	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l:
	Added two new font sizes:
	'smaller' and 'tiny'

	* src/DirectFB/objects/button.c,
	* src/DirectFB/objects/button.h,
	* src/DirectFB/directfb_mode.c:
	Now all graphic elements scale correctly...

	* src/DirectFB/directfb_mode.c (set_font_sizes):
	Ur... font sizes were already OK, no need to
	correct them.

	* src/DirectFB/objects/button.c (Button_Create),
	* src/DirectFB/directfb_mode.c:
	Began work on scaling all graphic elements so that
	they appear the same on all screen resolutions...
	Right now, background image and font sizes have
	been corrected. The correct ratio will be calculated
	by comparing the current screen resolution and
	the one the theme was designed for...

2005-03-07  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/directfb_mode.c,
	* media/Makefile.am (settings):
	Added keybindings configuration to default
	settings file.

	* src/DirectFB/objects/button.h,
	* src/DirectFB/directfb_mode.c:
	Clean up stuff so that even buttons use
	actions defined in keybindings.h instead
	of defining their own data structures...

2005-03-05  Noberasco Michele  <s4t4n@gentoo.org>

	* configure.in,
	* src/DirectFB/directfb_mode.c:
	Removed old powerkeys support, as it has been
	replaced by our new customizable keybindings
	support.

	* src/DirectFB/directfb_mode.c:
	Completed keybindings support.

2005-03-04  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/objects/utils.c (modifier_is_pressed),
	* src/DirectFB/objects/utils.h,
	* src/DirectFB/directfb_mode.c,
	* src/libraries/keybindings.h:
	Started work on assigning actual actions
	to these key bindings.

	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l,
	* media/qingy-mode.el,
	* src/libraries/keybindings.c,
	* src/libraries/keybindings.h:
	Added new keybinding action: revert to text mode...

2005-03-03  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/load_settings.c,
	* src/DirectFB/directfb_mode.c,
	* src/libraries/Makefile.am,
	* src/libraries/misc.c,
	* src/libraries/misc.h, 
	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l,
	* configure.in,
	* src/libraries/keybindings.c,
	* src/libraries/keybindings.h:
	Adding support for customizable key bindings...
	now they are correctly parsed, still have to write
	the code that actually makes qingy take these
	actions...

2005-02-04  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c (start_up):
	Fix a rather obscure bug in which login could fail even if username
	and password were correct...

	* media/qingy-mode.el,
	* src/libraries/load_settings.h,
	* src/libraries/load_settings.c (initialize_variables),
	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l,
	* media/default/theme: 
	Began support for specifying a theme native resolution.
	This is the native resolution of the theme, i.e. the resolution the theme
	was designed for. If qingy detects a running resolution different than this
	one, it will (try to) scale things so that they will look the same across
	all resolutions. If this is omitted, qingy will default to 800x600 to
	maintain compatibility with older themes...
	Usage: in theme file, specify something like
	native_resolution = 800x600

2004-12-24  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/misc.c (PrintUsage):
	Changed help message slightly.

2004-12-21  Noberasco Michele  <s4t4n@gentoo.org>

	* media/Makefile.am (settings),
	* media/qingy-mode.el,
	* src/main.c (start_up),
	* src/DirectFB/directfb_mode.c (begin_shutdown_sequence),
	(handle_mouse_event),
	* src/libraries/load_settings.c (initialize_variables),
	* src/libraries/load_settings.h,
	* src/libraries/scan_settings.l,
	* src/libraries/parse_settings.y:
	Added sleep support...

2004-11-29  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c (start_up):
	Fall back to text mode if login fails, instead of defaulting
	to the 'brains went pop' option ;-)
	Sigh, this means that my brains HAVE gone pop!

2004-11-28  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c (check_autologin),
	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l,
	* media/qingy-mode.el:
	Added support of automatically choose last session
	when auto-logging a user...

	* media/Makefile.am (settings),
	* src/libraries/scan_settings.l,
	* media/qingy-mode.el:
	Now the directory where qingy puts its temporary
	files is user-selectable...

	* media/qingy-mode.el:
	Fixed emacs major mode as it didn't always parse the
	settings file correctly.

	* src/libraries/load_settings.c (initialize_variables),
	* src/libraries/load_settings.h (AUTO_RELOGIN),
	* src/main.c (start_up, main, check_autologin),
	* src/libraries/misc.h (get_system_uptime),
	* src/libraries/misc.c (get_system_uptime): 
	Completed autologin support...

2004-11-27  Noberasco Michele  <s4t4n@gentoo.org>

	* media/Makefile.am (settings),
	* src/main.c (start_up, main),
	* src/libraries/load_settings.c (initialize_variables),
	* src/libraries/load_settings.h,
	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l:
	Begin work on autologin feature...

2004-11-25  Noberasco Michele  <s4t4n@gentoo.org>

	* media/Makefile.am (settings):
	Duh, forgot to update the default settings file
	with standard X servers arguments...

2004-11-20  Noberasco Michele  <s4t4n@gentoo.org>

	* src/main.c (start_up):
	Wait for 1 second before attempting to restart
	qingy interface if previous attemt failed

2004-11-16  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/session.c:
	Unset the DISPLAY env variable when logging in with a text session...

2004-11-12  Noberasco Michele  <s4t4n@gentoo.org>

	* media/settings (x_args),
	* media/qingy-mode.el (qingy-font-lock-keywords-1),
	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l,
	* src/libraries/load_settings.c (initialize_variables),
	* src/libraries/load_settings.h (X_ARGS),
	* src/libraries/session.c (Graph_Login):
	Added support for passing user-defined arguments to the X server.
	To enhance security, as a default we now pass '-nolisten tcp'...

2004-10-06  Noberasco Michele  <s4t4n@gentoo.org>

	* media/pam/Makefile.am (EXTRA_DIST):
	Fix typo.

2004-10-05  Noberasco Michele  <s4t4n@gentoo.org>

	* media/pam/Makefile.am,
	* media/pam/debian (removed),
	* media/pam/default/qingy
	* configure.in (debian):
	Added a new PAM module that apparently works for every distro
	(tested on Debian, fedora core, red hat, slackware), removed old modules...

2004-10-01  Noberasco Michele  <s4t4n@gentoo.org>

	* configure.in:
	Added support for AMD Athlon64 processors optimization.
	Fixed support for shadow password authentication...

2004-09-18  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/session.c (Graph_Login),
	(Text_Login):
	Allow for session files containing spaces.

	* src/Makefile.am,
	* src/libraries/Makefile.am:
	Fix stuff so that qingy links correctly against the PAM library
	when compiled as a static binary.

2004-09-10  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/directfb_mode.c,
	* src/main.c (start_up),
	* src/qingy_constants.h (QINGY_FAILURE): 
	Fix obscure bug: EXIT_FAILURE = 1
	but 1 is also a tty we may want to switch to...
	Thus I introduced QINGY_FAILURE, with value -1
	qingy interface now returns this value
	in case of failure...

	* media/Makefile.am (settings): 
	Add an example of 'retries' to settings file.

2004-09-09  Noberasco Michele  <s4t4n@gentoo.org>

	* media/pam/Makefile.am (EXTRA_DIST):
	Fix debian pam file location...

	* src/main.c (start_up),
	* src/DirectFB/directfb_mode.c (main),
	* src/libraries/load_settings.h,
	* src/libraries/load_settings.c (initialize_variables),
	* src/libraries/scan_settings.l,
	* src/libraries/parse_settings.y: 
	Added support for 'retries' setting in config file
	which allows user to specify how many times qingy
	should try to bring its gui up before reverting
	to text mode...

2004-08-20  Noberasco Michele  <s4t4n@gentoo.org>

	* media/pam/debian/qingy,
	* media/pam/default/qingy,
	* configure.in,
	* media/pam/Makefile.am:
	Differentiate qingy PAM module in a per-distribution way.
	Now we have a debian specific one and a generic one
	to be installed if distro is not debian

	* src/libraries/Makefile.am (libqingy_la_LDFLAGS):
	Add version number to qingy libraries...

	* src/libraries/load_settings.c (ParseCMDLine):
	Remove limitation of passing '-h' as first
	cmd line argument...

2004-08-19  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/misc.c:
	Fix typo...
	
	* src/libraries/load_settings.c (ParseCMDLine),
	* src/libraries/misc.c (PrintUsage),
	* src/libraries/misc.h:
	Add '-h' command line arg to display usage info.

	* configure.in:
	Fix the fix, or brown paper bag release!
	Correct bug I just introduced not allowing to run qingy any more
	due to incorrect cmd line arguments handling...

2004-08-18  Noberasco Michele  <s4t4n@gentoo.org>

	* lotsa_files_have_been_changed:
	Change way of handling of ParseCMDLine() dualism as previous
	way was seriously borked. Move most functions away from main.c
	as they are now needed by ParseCMDLine()...
	Version number now 0.5.1.

	* configure.in:
	Fix X11 sessions search path for Gentoo linux...

	* src/main.c,
	* src/libraries/load_settings.c,
	* src/libraries/load_settings.h,
	* src/DirectFB/directfb_mode.c:
	Move ParseCMDLine() from main.c to load_settings.c so that
	it can be called from both main.c and directfb_mode.c
	Differentiate the function a little when it gets called
	from one or the other source file.
	This fixes a bug that prevented command line arguments
	to be honoured by qingy-interface...

2004-08-17  Noberasco Michele  <s4t4n@gentoo.org>

	* src/DirectFB/directfb_mode.c (main):
	Fixed bug that prevented tty specific options in config file to work.

2004-08-16  Noberasco Michele  <s4t4n@gentoo.org>

	* media/qingy-mode.el:
	Update qingy emacs major mode with the newest items...

	* most_files_have_been_changed:
	Tonight I got really pissed for the 'DirectFB crash on shutdown issue',
	so I thought that if I cannot prevent it, maybe I can circumvent it,
	so an evil evil idea came to my mind (satanic cackling with mad laughter follows):
	I split qingy into two executables, one with the interface
	and one that does the actual login. This way it does not matter anymore
	how the interface dies, because it communicates username, password
	and session to start to the other via a pipe.
	As a result of this I have successfully logged in with qingy using
	gentoo-dev-sources-2.6.8 and vanilla-sources-2.6.8. As a side result,
	the qingy instance that logs you in will use about 2.5M of RAM against
	the 40M of the old solution (this because DirectFB leaves a lot of used RAM
	even after shutting down its graphic mode, but that gets cleaned when
	the qingy-interface dies).
	This looks like a big improvement to me, worth a new major release of qingy.
	Also, it paves the way for support of other graphic toolkits in qingy
	(bare framebuffer, SVGAlib, maybe others): each interface will have
	its own executable, and the main qingy will just have to launch it
	depending on user preferences...

	* lotsa_files_have_been_changed:
	Remove support for the '--black-screen-workaround'
	cmd line arg, as it is no longer needed.

2004-08-10  Noberasco Michele  <s4t4n@gentoo.org>

	* src/libraries/session.c (check_password):
	Change PAM authentication code to feed it the full
	tty name if using the short one fails...

2004-07-28  Noberasco Michele  <s4t4n@gentoo.org>

	* README (Options):
	Update README

	* src/DirectFB/directfb_mode.c,
	* src/DirectFB/objects/textbox.c:
	Implemented new key bindings:
	ctrl-h: delete one character
	ctrl-u: delete all characters
	ctrl-j: new line (enter)
	Patch contributed by Konstantin Korikov <lostclus@ukr.net>

	* src/DirectFB/objects/textbox.h:
	Add 'modifier' parameter to the KeyEvent call prototype.

	* src/DirectFB/objects/utils.c (modifier_is_pressed):
	Make use of the NONE modifier

	* src/DirectFB/objects/utils.h:
	Add the NONE modifier.

2004-07-02  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/libraries/load_settings.c (load_settings):
	moved last user file from /etc/qingy/ to /var/lib/misc/
	to comply to the File System Hierarchy Standard.
	Thanks to Jason Andryuk <the_deuce@yahoo.com>
	for poinint this out.

2004-06-17  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/DirectFB/objects/button.c (load_image_int),
	(load_image, Button_Create):
	Added proper support for transparent pixmaps, now qingy
	will honour the transparency instead of faking it by
	making the black pixels transparent...
	Code still in need of some cleaning up, but it works...

2004-06-14  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/DirectFB/objects/button.h (enum),
	* src/DirectFB/directfb_mode.c (create_windows),
	(handle_mouse_event),
	* src/libraries/load_settings.c (check_windows_sanity),
	* src/libraries/parse_settings.y,
	* src/libraries/scan_settings.l:
	Allow for buttons with no action associated to them.

2004-04-26  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* most_files_have_been_changed,
	* qingy.spec.in added:
	Accepted huge patch from Konstantin Korikov <lostclus@ukr.net>:
	"I send to you two patches: first fixes building
	and configuration process, second fixes bug in opening
	session using PAM.

	Description of first patch (qingy-CVS20040417-lc.patch):

	- Now configuration info passed to source through config.h.
	  I made this by two reasons:
	  1. The command lines can exceed the length limits of some
	     systems.
	  2. During compilation process, the long command lines
             complicate to review of error and warning messages,
             produced by compiler.
	- Added option, that disables automatic determination 
	  of optimization flags during configuration stage
	  (--{enable,disable}-optimizations). This useful for
	  building RPM packages for different architectures.
	- Added options, that specifies directory locations
	  (--with-pamdir, --with-screen-savers-dir, --with-themes-dir)
	- Added option, that disables compilation of code, that
	  stopping GPM (--{enable,disable}-gpm-lock).
	- Now settings configuration file creates by make.
	- Added qingy.spec.in file, that is template for qingy.spec.
	  Last needed for building RPM packages.
	- libdirectfb renamed to libqingyui for avoid confusion with
	  libdirectfb from DirectFB.

	NOTE: Now configuration stage is more flexible and portable.
	      As more other packages, qingy by default have 
	      installation prefix /usr/local. For installing it to
	      habitual place, we need to invoke configure script
	      with additional options:
              $ ./configure --prefix=/usr --sysconfdir=/etc

	Description of second patch (qingy-CVS20040417-ttyname.patch):

	This patch changes only one file, src/libraries/session.c.
	If PAM receives tty name in /dev/tty1 form, then pam_console.so
	module refuse to work.

2004-03-28  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* configure.in,
	* src/libraries/session.c (Graph_Login),
	* src/libraries/load_settings.c (initialize_variables),
	* src/libraries/load_settings.h,
	* src/libraries/scan_settings.l,
	* src/libraries/parse_settings.y:
	Added support for choosing an X server in settings file

	* src/main.c (get_resolution, ParseCMDLine, start_up)
	(PrintUsage): 
	New command line argument: '--resolution <xres>x<yres>'.
	Use this if qingy fails to properly detect your framebuffer
	resolution.

2004-03-24  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* configure.in:
	Changed version to 0.4.1

	* src/libraries/scan_settings.l,
	* src/libraries/parse_settings.y,
	* src/libraries/load_settings.h,
	* src/libraries/load_settings.c:
	Fixed theme loading code, now it won't crash any more...
	Also, I removed some code, now if theme loading
	fails qingy will go directly to text mode instead of
	trying to load default theme: this way users will be
	more encouraged to fix settings file ;-P

	* src/libraries/session.c (get_sessions):
	Some fixes...

2004-03-23  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/main.c (start_up),
	* src/DirectFB/directfb_mode.c (directfb_mode):
	Made sure that if qingy dies horribly during initialization,
	it does it with tty switching enabled so that user is not
	stuck in front of a 'respawning too fast' message...

2004-03-18  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* doc/qingy.texi (Installing from the tarball):
	Revamped installation instructions...

2004-03-09  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/libraries/load_settings.c:
	various code clean-ups
	
	* configure.in,
	* src/libraries/load_settings.c,
	* src/DirectFB/directfb_mode.c,
	* src/DirectFB/objects/screen_saver.c,
	* media/screensavers/pixel/Makefile.am,
	* media/screensavers/photos/Makefile.am,
	* media/screensavers/running_time/Makefile.am,
	* media/screensavers/matrix/Makefile.am:
	Screen saver support is now optional (enabled by default).

	* src/libraries/session.c (get_sessions),
	* configure.in:
	Be nicer to Slackware: X sessions path is /etc/X11/xinit/
	and X session names in there match pattern "xinitrc.*"

	* src/libraries/session.c (setEnvironment):
	Also set PATH env variable: not doing this sometimes leads
	to the impossibility to fire up an X session because the X
	server cannot be found (true for Slackware, maybe others).

2004-02-29  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/libraries/session.c:
	code cleanups.

2004-02-27  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/libraries/tty_guardian.c:
	fixed some tty_guardian problems;
	Remaining issues (that I know of ;-P):
	- if you log in into a text console and later fire
	  up an X server manually, the tty the X server is running in is
	  not guarded.

2004-02-26  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/main.c (main, ParseCMDLine):
	Add some more sanity checks...	

2004-02-25  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/libraries/session.c (PAM_conv):
	some cleanups, remove unnecessary code.

	* src/libraries/load_settings.c (various_functions):
	general overhaul, remove some unnecessary code.

	* many_files:
	re-add some libraries into 'qingy' binary, as their stuff
	is needed almost constantly. Added ./configure option
	to enable installation of emacs major mode (now disabled
	by default).

2004-02-24  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* media/qingy-mode.el:
	updated to reflect new stuff in config and theme files;
	now highlights correctly:
	- variables 'screensavers_dir', 'themes_dir', 'clear_background',
	            'lock_sessions'
	- constants 'yes', 'no'
	- builtins  'tty'
	Paolino: I believe I got it right, but of course
	         I don't understand a gnat about lisp ;-P

2004-02-19  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* most_files_have_been_changed,
	* various_files_moved_or_added:
	Support for dynamic libraries works better, now.
	Added ./configure option to compile qingy statically.
	Changed some source files to allow for this dual
	mode of compilation.
	Moved most files in src/ to src/libraries/
	Now I'll take a rest and watch some pr0n ;-P

2004-02-16  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/load_settings.c (get_random_theme): 
	simplify method to get value fot srand()

	* lost_track_of_all_of_them: 
	begin work on creating shared libraries and linking to them
	instead of creating a huge binary

2004-02-12  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* media/default/Makefile.am,
	* configure.in,
	* src/scan_settings.l,
	* src/parse_settings.y,
	* src/DirectFB/objects/screen_saver.c,
	* src/load_settings.c,
	* src/load_settings.h,
	* media/screensavers/matrix/matrix.c,
	* media/screensavers/matrix/Makefile.am,
	* media/screensavers/pixel/Makefile.am,
	* media/screensavers/photos/Makefile.am,
	* media/screensavers/running_time/Makefile.am:
	conform to file system hierarchy standards: screen savers
	go to /usr/lib/qingy/screensavers, themes to
	/usr/share/qingy/themes

	* src/tty_guardian.c,
	* src/chvt.h,
	* src/chvt.c,
	* src/misc.h,
	* src/misc.c:
	completed session locking: it should work well
	under all conditions, now. Again, this is what
	it does (and it really does it, now):
	if you enable this, when you try to switch to a qingy-controlled tty
	whose owner is not your current user, you will be asked
	for the password of that user before being allowed to continue.
	If you are root, of course, you can switch to any tty you chose to.
	Default setting is 'no'.
	Only issue is that you log in into a text console and later fire
	up an X server manually, the tty the X server is running in is
	not guarded.

2004-02-11  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/tty_guardian.c:
	More work, works a bit better...

	* src/parse_settings.y: 
	make tty guardian setting aware of global /
	tty specific configuration.

	* media/screensavers/running_time/Makefile.am (INCLUDES),
	* media/screensavers/pixel/Makefile.am (INCLUDES),
	* media/screensavers/photos/Makefile.am (INCLUDES),
	* media/screensavers/matrix/Makefile.am (INCLUDES):
	added new path to includes, otherwise compilation fails
	if screensaver_module.h is not found in /etc/qingy/screensavers/

2004-02-09  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/tty_guardian.c: more work on session locking;
	now it works except that if you come from an unused
	tty, which is owned by root, you get granted access
	to any guarded tty. I have to devise a way to know
	wether a tty is in use or not. Also, if an user starts
	an X server from inside a text session, that X server
	is not guarded...

2004-02-06  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/chvt.c (get_tty_owner),
	* src/chvt.h (get_tty_owner): 
	added this function (needed in tty_guardian.c) that checks
	who owns a certain /dev/tty<n> file.

	* src/tty_guardian.c,
	* src/tty_guardian.h:
	Added these which contain all the necessary stuff to handle session
	locking. NOTE that this isn't quite functional, yet. More work needs
	to be done.

	* src/main.c (ParseCMDLine): make use of getopt_long()
	instead of parsing command line arguments 'by hand'.
	Various small fixes and clean ups.

2004-02-04  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/scan_settings.l,
	* src/parse_settings.y,
	* src/load_settings.h,
	* src/load_settings.c (initialize_variables),
	(load_settings):
	Added session locking support; if you enable this, when you try to
	switch to a qingy-controlled tty whose owner is not your current
	user, you will be asked for the password of that user before being
	allowed to continue. If you are root, of course, you can switch
	to any tty you chose to. Default setting is 'no'.
	NOTE: this is not functional yet!

	* src/parse_settings.y,
	* src/load_settings.h,
	* src/load_settings.c:
	Added erase_options() that removes all screensaver options.
	If a screensaver get selected in config files more than once,
	made sure options of previous ones get erased.

	* media/screensavers/matrix/matrix.c,
	* media/screensavers/running_time/running_time.c:
	fix compiler warnings about unnused variables

	* media/default/theme: 
	Changed default theme background image format to jpg. This saves
	a lot of disk space without any noticeable loss of quality.

	* src/chvt.c (set_active_tty): This didn't always return a value.
	(unlock_tty_switching): This didn't always return a value.
	(open_a_console): fix a retval check.
	(get_available_tty): fix retval checks.
	(tty_redraw): more retval checks.
	(disallocate_tty): conform to the coding style of the other functions.
	(get_fb_resolution): add some checks.

2004-02-03  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/chvt.c (get_active_tty):
	I really would like to know the guy who had
	this smart idea of removing the close(fd), leading *again*
	to the bloody 'too many open files' crash

	* media/Makefile.am,
	* media/screensavers/matrix/Makefile.am:
	some needed files didn't get included in the source distribution...

	* src/main.c (main),
	* src/load_settings.h,
	* src/scan_settings.l,
	* src/parse_settings.y,
	* src/load_settings.c (add_window_to_list),
	* configure.in:
	Added support for tty specific options. In settings file
	use something like this:
	tty = 3
	{
	  theme = "fireplace"
	  screensaver "pixel"
	}
	These settings will take effect only if qingy is started from tty3

2004-02-01  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/parse_settings.y,
	* src/scan_settings.l,
	* src/load_settings.h,
	* src/load_settings.c,
	* src/DirectFB/directfb_mode.c,
	* configure.in,
	* media/default/theme:
	Add 'clear_background' statement support in theme
	and settings files to tell qingy wether we should
	clear the background image during messages like
	'logging in xxyy...'. If set in settings file it
	defines the default policy (we use that setting
	if the theme file do not set it itself)...

2004-01-30  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/DirectFB/directfb_mode.c: cosmetic fixes,
	some stuff to make it sompliant to GNU coding style

	* src/session.c (add_utmp_wtmp_entry),
	(add_utmp_wtmp_entry):
	added functions to manage writing to /var/log/wtmp;
	this is necessary for tools like 'who', 'w' and finger
	to 'see' users logged in with qingy. Modified
	Text_Login() and Graph_Login() to use them

	* src/chvt.c (get_fb_resolution): Added this function,
	it gets the current console framebuffer resolution
	(tty_redraw): de-uglified some code ;-P

	* src/chvt.h (get_fb_resolution): prototype for the above...

	* src/main.c (start_up): make use of get_fb_resolution();
	now setting a directfbrc.qingy is no longer necessary

	* configure.in: removed search for 'fbset' executable position.
	Update VERSION to 0.4.0CVS

	* media/Makefile.am: removed stuff that created directfbrc.qingy

	* media/screensavers/: included the screensavers in autoconf...
	now they get properly installed
	
2004-01-26  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* media/screensavers/Makefile.am: added, completing Make-tree

2004-01-24  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/DirectFB/directfb_mode.c (begin_shutdown_sequence):
	minor clean ups

	* src/scan_settings.l: removed some tokens

	* src/parse_settings.y: use the 'silent' variable;
	removed some screensaver tokens no longer necessary,
	some little clean up

	* src/DirectFB/objects/screen_saver.c (activate_screen_saver):
	made it pass the 'silent' env variable, too.

	* media/screensavers/photos/photos_screensvr.c: made it work with new
	modular screensaver stuff...

2004-01-22  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* doc/qingy.texi (Rolling your own screensavers): updated with
	make, install and distribution instructions. Spell-checked the
	whole file.

	* media/screensavers/*/Makefile: rewrote Makefiles in a general
	way.

	* src/load_settings.c (get_welcome_msg): added option to have file
	.qingy_welcome in user home and display first line of it as
	welcome message. Retained global welcomes file option as well as
	default.

2004-01-22  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/parse_settings.y: Fixed a bug where a pointer got displayed
	instead of the value it pointed to...

2004-01-21  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* src/scan_settings.l (set_theme): bug fixed. Now it looks like
	working

2004-01-20  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* src/load_settings.c, src/load_settings.h, src/scan_settings.l
	(set_theme): moved here, changed to fix bug due to bison
	buffering.

	* doc/qingy.texi (Windows): bugfix: inconsistency "polltime" ->
	"time". Thanks to Carl N for pointing that out.
	
	* src/DirectFB/directfb_mode.c (handle_keyboard_event): Added
	powerkeys option

2004-01-17  Noberasco Michele  <noberasco.gnu@disi.unige.it>

	* src/DirectFB/objects/screensaver_module.h: see below...

	* src/DirectFB/objects/screen_saver.c: removed screen_width and
	screen_height variables in favour of screenEnv.screen_width and
	screenEnv.screen_height. Updated copyrights

	* src/parse_settings.y: changed add_to_paths calls to add_to_options

	* src/load_settings.h: renamed image_paths to screensaver_options,
	renamed add_to_paths prototype to add_to_options

	* src/load_settings.c: renamed add_to_paths to add_to_options;
	changed stuff to conform...

	* src/DirectFB/objects/screen_saver.: changed image_paths
	structure to screensaver_options. Changed stuff to conform...

2004-01-12  Paolo Gianrossi  <paolino.gnu@disi.unige.it>
	
	* media/qingy-mode.el: added, with filename bug fixed.

2004-01-13  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* media/screensavers/pixel, media/screensavers/pixel: added two
	screensaver modules that can be automagically loaded at demand

2004-01-13  Paolo Gianrossi  <paolino.gnu@disi.unige.it>
		
	* src/DirectFB/screen_saver.c, src/DirectFB/screen_saver.h
	* src/DirectFB/screensaver_module.c:
	added dynamic loading of screensavers as modules.

2004-01-10  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* media/themer: added. Perl script to translate old themes to new
	ones.

2004-01-07  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* src/DirectFB/directfb_mode.c (start_login_sequence): added
	user-oriented welcome messages. See documentation.

2003-12-10  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* src/parse_settings.y, src/scan_settings.l, src/load_settings.c,
	src/load_settings.h: added dynamic window support to config files.

2003-12-06  Paolo Gianrossi  <paolino.gnu@disi.unige.it>

	* src/load_settings.h: added window structure and enum of types-
	hope to parse it all in very small time :) 
	

 /********************************************************************\
 *** 								    ***
 *** PLEASE NOTE: Due to restructuring of the project structure,    ***
 ***        	  this ChangeLog is effective since Qingy v. 0.30   ***
 ***	 							    ***
 \********************************************************************/	
 
	
