Re: gnome desktop integration library
- From: Rodrigo Moya <rodrigo gnome-db org>
- To: Havoc Pennington <hp redhat com>
- Cc: Mark McLoughlin <mark skynet ie>, Vincent Untz <vuntz gnome org>, Control Center List <gnomecc-list gnome org>, desktop-devel-list gnome org
- Subject: Re: gnome desktop integration library
- Date: Wed, 06 Sep 2006 14:27:17 +0200
On Tue, 2006-09-05 at 19:33 -0400, Havoc Pennington wrote:
> Hi,
>
> Rodrigo Moya wrote:
> > panel applets, interaction with the panel, screensaver, etc, etc, are
> > not things that can go into GTK. If they can, then let's put them in
> > GTK, but so far it seems they can't.
>
> You're just taking this for granted. It's not like there's some a priori
> definition of "stuff that can go in gtk" - the single platform (call it
> gtk) should have whatever makes sense to have in there. Which is
> anything that a general-purpose GUI desktop app would typically want to do.
>
> I think "write a panel applet" should be its own lib because that's not
> something most apps want to do, but it is a well-defined thing that a
> specific kind of app wants to do. So it's an optional platform component
> and it's clear when you want it.
>
> I see nothing wrong with a gtk_get_screensaver_is_active() function.
> Lots of apps need that, why would gtk be against this?
>
because of the D-BUS dependency? It makes sense to have, as you
mentioned, screensaver stuff in GTK, but the problem is the same as with
GConf. Until GTK can depend on GConf, gnome-vfs, D-BUS, etc, we'll need
a place to put all the stuff that depends on that and which is used to
talk to GNOME desktop components.
> > as more and more apps use D-BUS for desktop services, and since GTK
> > can't depend on D-BUS, we need a high level place to put those things,
> > instead of the current way of having lots of small libraries
>
> Why can't gtk depend on dbus? How do those reasons not apply to libgnome?
>
> I don't know, I'm asking. But there's no reason to just make an
> assumption up front that gtk can't depend on dbus, or that gnome should.
>
it's not an assumption, I've heard it many times. If I'm wrong, then
please let me know so that I change the plan to put all this into
GTK/glib rather than in a high-level library.
> > you are thinking about libgnome/ui, which have been a trash bin for
> > stuff not accepted in other lower level libraries, but as I said before,
> > this high level lib would contain things specific to GNOME (like talking
> > to desktop services) that are not general-purpose and cross-platform
> > enough for being in GTK.
>
> If the lib is for not-cross-platform not-general-purpose APIs, then I'd
> suggest calling it something related to that, or calling it some
> meaningless name and describing it as that...
>
but if the lib is for 'integration into the GNOME desktop', why would we
call it something related to its non-cross-platform or generic?
> but how many app developers, given an honest description of a lib as
> "unportable special-purpose APIs," will choose to use this lib? And is
> there any way to limit how big such a lib gets? There are an awful lot
> of unportable special-purpose APIs in the world ;-)
>
again, I think you are thinking about this lib like a place to put
things like what there is now in libgnome/ui. And no, this is not my
intention at all. My idea is to put interfaces to GNOME services
(screensaver, panel, etc), and policy-related implementations (lockdown,
for instance, as JP said in a previous mail) and any other thing that
might come up in the future.
> > right, GnomeLabel (or any similar "crappy" widget) won't be at all in
> > the library I am proposing.
>
> But why not? The question is what is the definition of this library.
> GnomeLabel was probably special-purpose and unportable ;-) I bet it also
> offered tighter GNOME integration.
>
I think you are not getting my point, the idea of this lib is not to
have non-cross-platform, unportable stuff, it is to provide a single
point for developers to use the GNOME components from their apps. That
is, instead of saying "use gnome-desktop for reading .desktop files,
gnome-menus for reading dirs with .desktop files, libpanel if you want
to talk to the panel, libgnome-settings-daemon if you want to
communicate with the settings daemon, xxx to do xxx, etc, etc", we would
say "use libwhatever to use public GNOME components' interfaces"
I hope my explanation was better this time.
--
Rodrigo Moya <rodrigo gnome-db org>
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]