Re: XCB + deprecating gtkx.h ?
- From: Bastien Nocera <hadess hadess net>
- To: John Ralls <jralls ceridwen us>
- Cc: gtk-devel-list gnome org, Havoc Pennington <hp pobox com>
- Subject: Re: XCB + deprecating gtkx.h ?
- Date: Fri, 25 Jun 2010 18:05:47 +0100
On Fri, 2010-06-25 at 09:54 -0700, John Ralls wrote:
> On Jun 25, 2010, at 8:28 AM, Bastien Nocera wrote:
> > On Fri, 2010-06-25 at 08:11 -0700, John Ralls wrote:
> >> On Jun 25, 2010, at 7:48 AM, Havoc Pennington wrote:
> >>> Hi,
> >>> On Fri, Jun 25, 2010 at 10:11 AM, Stuart Axon <stuaxo2 yahoo com> wrote:
> >>>> I was reading about XCB and trawled through the gtk list archives noticed
> >>>> there was some discussion, but that deprecating gtkx.h seemed to stall things.
> >>>> Maybe now that gtk3 is coming up it would be the time to consider deprecating
> >>>> this, so that in future it could move to XCB?
> >>> You can't really just deprecate it without a replacement, since there
> >>> are plenty of legitimate reasons to get at the underlying X stuff.
> >>> I guess maybe gdkx.h could avoid including the actual xlib or xcb
> >>> headers, and instead use its own XID typedefs, and have some kind of
> >>> API to abstract Display* vs. xcb_connection_t* etc. But that's the
> >>> real hard part I would think.
> >> Here we go again. Is Gtk+ a cross-platform toolkit or is it a wrapper for X11?
> > What does that have to do with anything? GDK allows access to the
> > underlying windowing system, be it OS X, Windows, or X11. That's a
> > feature.
> Not exactly, and its being a feature is debatable.
> Consider that gtkx.h exposes more than 50 functions (more than 60 if
> MULTIHEAD_SAFE isn't defined). gdkquartz.h exposes 5 and gdkwin32.h
> exposes 6, plus 5 more with the comment "For internal GTK use only".
> Hardly equal access to the underlying windowing system. It's because
> Gdk's close adherence to the X11 interface means that it implements a
> lot of features which make no sense at all outside of X11.
The problem is that you're comparing things that aren't really
comparable. Without a number of those, you cannot use "mostly" GTK/GDK
to implement things like a status icon tray, the GtkPlug widget, or a
All those aren't needed on other platforms, because they're implemented
If you have specific griefs against some of the functions being
exported, best to file a bug, and explain why you think it should be
removed, and what it would be replaced by in the users of those
functions, if any.
] [Thread Prev