2013/10/21 PCMan <pcman.tw@gmail.com>
While trying to integrate lxsession with new lxde-qt project, I noted
some problems.

1. lxsession now depends on libgee because of use of ArrayList class.
I replaced them with plain GLib array and lists so we don't need
libgee anymore. Please see remoge_gee branch on lxde.git.sf.net.
Julien, if you agree I want to merge it with master so we don't need
libgee dependency.
I'll look at the branch, libgee was just easier to use than standard arrays.
I use more arrays on my current local changes, so I need also to adapt it to those changes.
2. lxsession exposes quite a lot of dbus stuff. Are they all required?
What's the purpose of spredsheet, email, calculator, and all the other
commands and their launcher functions? What's the use case of all
these commands? If they're not used, can we remove them?
I'm currently rewritten the dbus interface, it will expose less stuff and dynamically expose the option available, instead of hardcoding all the methods.

3. The old lxsession can expand environment variables in the config
files properly with posix wordexp(), the ability seems to be lost in
current vala rewrite. I checked the code and found that many things
are hard-coded, and it only replaces XDG_CONFIG_HOME. Can we fix this
part and hard code less stuff, putting the lubuntu-specific parts in
the config files rather than the binary code?
Could you be more specific ? All variables I found in old lxsession code was kept in lxsession/environnement.vala

4. Is it possible to make it build totally without gtk+? I'm not quite
familiar with current lxsession code base so Julien your help is
really wanted.
You can build the lxsession binary without linking to gtk+, but there is still stuff in the lxsession source that need gtk+ (lxsession-logout, lxsession-edit ...).

Julien Lavergne