System tray completed

Jasper Huijsmans jasper at moongroup.com
Thu May 1 23:02:26 CEST 2003


On Thu, 1 May 2003 19:28:33 +0200
Benedikt Meurer <Benedikt.Meurer at unix-ag.uni-siegen.de> wrote:
...
> > Speaking of the system tray, whenever I start XFce4 or go
> > to it's preferences, I get a dialogue box telling me a
> > system tray is already running and to continue will grab
> > all the icons, or something like that. Only I don't ever
> > see anything in my system tray. Am I missing something or
> > doing something wrong?
> 
> Thats the xfce4-systray plugin telling you that theres already a
> system tray running (the one in the taskbar). Toby maintaines the
> systray plugin.
> 
> Toby, maybe you should popup the dialog only once, and save the
> answer to a variable, or something like that.
> 
> And Jasper: We should really change the panel API, so that plugins
> are notified when they're put into the panel.
> 

Right, as I said in an e-mail earlier, with the current panel design I
don't see how it is possible to correctly fix it. I'm afraid the systray
plugin is simply exposing a design limitation that can only be solved by
some major reworking of the way the panel handles plugins, especially
adding and editing them.

So, this is all 4.1 stuff IMO. Perhaps we can think of a hack to
work around the worst annoyances, but the panel is simply not ready for
plugins that require uniqueness.

I will be asking for suggestions and comments on the panel design if I
get around to writing something up. Some things are in my TODO file in
CVS, but there are more. Things I'm considering:

* panel becomes a widget
  - settings become properties with corresponding signals when they are
    changed

* panel items become widgets derived from GtkEventBox probably, with
  perhaps a signal for when they are added to / removed from the panel
  and an interface with virtual functions for the plugins to fill in.
  - would be nice to provide a simple interface to save settings to hide
    the xml stuff.

* perhaps there can be a special panel launcher item derived from the
  panel item widget to implement the default laucher icon. Another
  special widget may be a separator.

* Change the way panel contents are changed. Perhaps 1 big dialog with a
  listview with all items, where you can move them around, add new one
  or remove others. At least don't create a new instance of every 
  module when the users opens an item dialog. Related to that, allow 
  panel items to be added only once. How to provide a good interface for
  this is really quite difficult.

* Decide what to do with the popup subpanels. Allow to hide them?
  Should only  launcher items have a subpanel and plugins not? Keep
  the 4 positions or implement them like browser buttons
  (forward/backward button with history menu side by side)?

* Allow more than one panel. Probably using an existing panel
  process. This would allow for example a panel with monitors (clock
  mailcheck, whatever) that's always visible and a panel with launchers
  set to autohide. This will have big consequences for the way we can
  use the settings manager, though.

Anyway, these are all just random thoughts running through my head and
only when doing the coding will we find out what works best. As I said,
all 4.1 stuff. 

Now, we should really focus on getting a release out. That means bug
fixing, doc writing, and lots of testing.

	Jasper

PS
So many ideas, so little time ... :(




More information about the Xfce4-dev mailing list