Friday, January 11, 2013

Another update

After some period of inactivity here, due various obligations and
increased work on EDE, I'm putting a short list of completed changes; some of them
are visible and some not.

First the biggest one: a big overhaul of window container inside
panel (the place where window icons/buttons are hold). In previous
iteration, every window list change, which is emitted by window
manager, would trigger buttons cleanup and recreation; not very
efficient because this would make many C++ new/delete calls.

Now, those calls were dramatically reduced by tracking window states and
desktop position, outside window list received from window manager;
this also fixes one bug that annoyed me for some time: when you
would focus window by clicking on window titlebar, order of window
buttons inside panel would be changed. This is probably pekwm
optimization for faster access of top level windows.

The next one is tray icon removal fix: when you had a bunch of apps inside tray and
after you did some manipulation with them (close app, reopen and
such), tray would leave empty boxes around. No more ;)

jam, a tool
for building EDE and edelib, is now bundled with edelib. Beside it is
easier to install it on platforms where is not installed (just go
to edelib/tools/jam and hit make && make install), it is
much easier to fix issues in it and distribute those fixes; you always
get updated version with fresh edelib release.

Also, the last but not least, EDE and edelib are updated to compile
and work on OpenIndiana, a fork
of OpenSolaris. I'm not sure why, but I always get warm feeling around
Solaris-es, no matter if they aren't popular much these days.

Upcomming planned changes should be mostly related to EDE
Manual transfer to wiki and adding configuration for panel.

Manual is quite incomplete and will be much easier to update it
(and contribute with proofreading and fixes) on wiki. Also, this will
make code lighter (bundled asciidoc will be removed) making
default EDE non dependable on python; however, to build icon theme you will
still need it, unless you are using official releases, where theme comes
already prepared).

Panel configuration is must feature before 2.1 release because
it is often requested feature. Some people would like any kind of
configuration and some GUI frontend; I'll see how can be added without
delaying release 2-3 months more.