Re: Porting GNOME to Wayland



hi Tristan;

On 18 March 2013 08:31, Tristan Van Berkom <tvb gnome org> wrote:
On Sat, Mar 16, 2013 at 3:32 AM, Matthias Clasen
<matthias clasen gmail com> wrote:
features. Lastly, the GTK+ Wayland backend needs some love to reach
parity with the X backend. We will retain the ability to run X
applications in a compatibility mode, so there is no need to rush and
port all the worlds applications to Wayland. Porting of applications
can happen independently and at its own pace.

I'm asking this out of my own curiosity... what kind of porting work
would be required for an 'application' to be ported to wayland ?

not much, unless the application is using the GDK-X11 API directly -
in which case, the application will have to be ported to detect the
Wayland backend, and use the Wayland API.

Shouldn't that be transparent for most applications by virtue
of linking against the new default wayland GDK backend ?

i.e. usage of the gtk+-3.0.pc would imply wayland anyway
in the bright future where GTK+ is installed on a wayland
capable system, right ?

correct.

Will applications need to update configure.ac to specify
a specific GDK backend ? (for systems which might
offer both GTK+ backends, x11 and wayland ?)

no. we have run-time detection code for that since GDK started
allowing multiple backends to be compiled in the same shared object;
applications are supposed to check non only that the GDK they are
using has been compiled against all the backends they support, but
also that the GDK backend being currently used is supported by the
application.

And... basically I suppose we're mostly talking about applications
which explicitly #include <gdk/gdkx.h> that might need any
porting, if any applications do need porting ?

again, correct.

though we do have platform-specific code in public headers for GTK as
well: GtkPlug and GtkSocket are only available on X11, for instance.

ciao,
 Emmanuele.


--
W: http://www.emmanuelebassi.name
B: http://blogs.gnome.org/ebassi/


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