In the Debian packages, it is important that changes to
the system configuration (or menu) get quickly noticed
and reloaded into the running fbpanels. Since killall
-USR1 fbpanel is prone to error, I instead decided to
implement a "config watcher", to keep note of all of
the config files we're using, and if any of them gets
updated, we reload the panel.
There appears to be a memory leak that occurs on panel
reload, which I find faintly disturbing, but I haven't
been able to distinguish if it's my changes or a
pre-existing leak (probably in GTK).
The current implementation is available from
http://www.hezmatt.org/~mpalmer/mirrors/viewarch.cgi/mpalmer@debian.org--debian-2004/fbpanel--config-watcher--4.1
(click '(all patches)' for the complete changeset).
Fixes will be included there. For testing, I've run
fbpanel and touched various included files and each
time it causes fbpanel to reload. I will be including
the patch into the Debian fbpanel packages, so it'll
soon get a whole lot of exercise. Feel free to hold
off on applying this patch for a few weeks to get all
the kinks out in the Debian package first.
Logged In: YES
user_id=638458
personally, I do not like idea of fbpanel constanly acesses
disk. This way you never get power save mode on laptop. And
I want a fbpanel to be the only one who read/write its
config file so I have to update code in one place and do not
worry about file lokcing etc.
Logged In: YES
user_id=621643
Unfortunately, there must be a means to allow all running
fbpanel instances to reload their config files at arbitrary
times. I'll continue to include the patch I provided in the
Debian-packaged fbpanel until such time as there is an
alternate means of performing this action.
Logged In: YES
user_id=638458
may be it's good idea to write invisible (no-gui) plugin
that will watch for alteration of all config files and
restart fbpanel if they were changed.
this way, interested users can enable it whist other do not.
If you implement it as plugin I will include it.
P.S. icons is a good example of invisible plugin
Logged In: YES
user_id=638458
actually adding comand line option to enable/disable such
behaviour will be enough.