Re: [patch] compiling GTK+ w/o X



Hi,

Owen Taylor <otaylor redhat com> writes:

> > It is provided by all ports, but is only defined in the port-specific
> > headers. The testpixbuf demos won't compile as they are now unless
> > you have X11 headers installed since <gdk/x11/gdkx.h> includes them.
> > If you don't like using the global variable, there should be a public 
> > function gdk_root_parent() defined in gdk.h which is implemented by 
> > all backends instead of the GDK_ROOT_PARENT() macro.
> 
> The fact that gdk_parent_root happens to be declared in a gdkprivate.h
> which is not in a subdir doesn't mean that it is a cross-platform
> concept.
> 
> If the "root window" as something you can draw upon, and so forth, is
> a cross-platform concept, then it needs to be in a public header,
> and declared as something like:
> 
>  GdkWindow *gdk_window_get_default_root (void);
> 
> If not, then your patch doesn't fix anything.

Well, either we introduce such a concept and the necessary API or
we make the compilation of testpixbuf-[drawable|save].c optional.

Since it looks as if all backends (besides nanox, but that one is
not uptodate anyway) implement the GDK_ROOT_PARENT() macro and all
do it the same way by saying
   #define GDK_ROOT_PARENT() ((GdkWindow *)&gdk_parent_root)
it could actually make sense to introduce gdk_window_get_default_root().
I'm not sure however if all backends allow writing onto that surface
or if it would need to be a read-only thing (which would still make
it useable for doing screenshots). Comments anyone?


Salut, Sven




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