Re: gnome desktop integration library



On Qua, 2006-09-06 at 15:26 -0400, David Zeuthen wrote:
> Hi Havoc,
> 
> On Tue, 2006-09-05 at 21:16 -0400, Havoc Pennington wrote:
> > Hi,
> > 
> > To be slightly more constructive, I was thinking on the drive home, why 
> > wouldn't there be something like:
> > 
> > interface GdkSession {
> >    signal "online-changed"
> >    signal "screensaver-changed"
> >    signal "idleness-changed"
> >    signal "logging-out"
> > 
> >    /* plus getters for all those states */
> > }
> > 
> > GdkSession* gdk_display_get_session(GdkDisplay *display);
> > 
> > This seems to cover lots of the issues raised. It would obviously have 
> > platform-specific backend, which could be dbus, or anything else that works.
> 
> Ideally you'd just wrap the interfaces exported by the Power Manager and
> the Screen Saver [1] when running on GNOME. That shouldn't be too hard
> provided you don't have to dlopen libdbus.so.*.
> 
> Not sure how this fit into the Win32 / Mac OS X / etc. story of GTK+
> cross platform - last thing I want is GTK+ trying to abstract the
> o.g.PowerManager and o.g.ScreenSaver abstractions. Rather, let's review
> said D-BUS interfaces and make sure they work on e.g. Win32 too. 

  And don't forget xscreensaver.  I once added support in one of my
programs monitoring screensaver through D-BUS.  It was very neat and
worked, but then I got a bug report asking for xscreensaver support.
And the xscreensaver maintainer refuses to use D-BUS, and asks us to use
"xscreensaver-command -watch" instead, like in [1].

  So getting proper screen saving notification abstractions is not
trivial, and I agree we could use a common library for that.

[1] http://telecom.inescporto.pt/~gjc/gnome-osd/hg/gnome-osd/?cmd=file;file=gnomeosd/xscreensaver.py;filenode=35463d1d41b70b7be4d795cc3abf6e1094609b6e

-- 
Gustavo J. A. M. Carneiro
<gjc inescporto pt> <gustavo users sourceforge net>
The universe is always one step beyond logic.




[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]