Tips

This section describes how to obtain the best from florence outside of the GNOME desktop

Using Florence without GNOME

Florence is primarily intended to be used with the GNOME desktop. It makes use of the libraries that are commonly installed with a GNOME desktop. However, you can install those libraries on any desktop in order to run Florence. The packages necessary to have all the libraries are listed in the install section.

For auto-hide mode to work, you need to start the at-spi registry daemon at session startup: Start at-spi registry daemon before Florence (at session startup):

  1. Gentoo:

    $ /usr/libexec/at-spi-registryd &
    			
  2. Mandriva:

    $ /usr/lib/at-spi-registryd &
    			

Some distros may put the at-spi-registryd command elsewhere. Use the find command to find out where your distro put at-spi-registryd:

$ find /usr -name at-spi-registryd
		

Adapt according to the result.

GNOME does start the daemon automatically if it is configured with the gnome-at-property dialog.

If you are not interested in auto-hide mode, you can as well compile florence without at-spi: use the --without-at-spi configure option at configure time to save some disk space.

You should run florence with the --no-gnome option. Modify the desktop file accordingly. not using this option will make florence prompt you with GNOME specific dialogs: not a big deal, but annoying anyway.

If your DE is XDG compliant (like XFCE), Florence should be accessible via the menu. Anyway, starting florence from the command line will always work. If you don't have a systray, you can install peksystray. You can also access the preferences dialog with:

$ florence --config
		

You can also skip the gconfd process by using a key-value pair file instead. Gconf libraries are still required to compile florence though. Use the --use-config option if you don't want to use gconf (see the configuration section for more information about this option)

If your window manager does not support the always_on_top hint, you can use the keep_on_top parameter in gconf (/apps/florence/window/keep_on_top), or in the configuration file in the [window] section. When this parameter is checked, the keyboard will keep bringing itself back to front periodically, so it does not get covered by other windows.

Note that QT3 applications don't support at-spi. Therefore you should not deactivate auto-hide mode on KDE3. QT4 application will support at-spi when the at-spi registry daemon is migrated to dbus. Until then, auto-hide mode does not work with KDE4 either.

Using Florence with GDM

Using florence at GDM is possible with gdmlogin. gdmgreeter has some issues with accessibility currently.

Configuring GDM to launch florence at login time involves editing 2 files in /etc/X11/gdm (requires root privileges): custom.conf and modules/AccessKeyMouseEvents.

In /etc/X11/gdm/custom.conf, add the following lines in the [daemon] section (if they are not already present):

Greeter=/usr/lib/gdmlogin 
GtkModulesList=gail:atk-bridge:/usr/lib/gtk-2.0/modules/libkeymouselistener:/usr/lib/gtk-2.0/modules/libdwellmouselistener
		

In /etc/X11/gdm/modules/AccessKeyMouseEvents, add the following lines:

# Start florence virtual keyboard by pressing any mouse button for 2 seconds
<Mouse1> 1 2000 10000 /usr/bin/florence --focus --no-gnome --use-config /usr/share/florence/florence.conf
<Mouse2> 1 2000 10000 /usr/bin/florence --focus --no-gnome --use-config /usr/share/florence/florence.conf
<Mouse3> 1 2000 10000 /usr/bin/florence --focus --no-gnome --use-config /usr/share/florence/florence.conf
		

You should delete any other line starting with <mouse1>, <mouse2> or <mouse3> in order to prevent any other keyboard from starting instead of florence (like gok).

When you have edited those two files, you should be able to start florence at next boot at gdm login. Press any mouse button for more than 2 seconds on the login window to do so.

You can modify the keyboard settings for GDM as root with this command:

# florence -c --use-config /usr/share/florence/florence.conf