If this is your first visit, be sure to
check out the FAQ by clicking the
link above. You may have to register
before you can post: click the register link above to proceed. To start viewing messages,
select the forum that you want to visit from the selection below.

X on Wayland: Necessary if Wayland is to become the main server at some point, since there will be a huge amount of X apps around for a long time.
Wayland on X: Useful if you're using (or writing) a Wayland app but otherwise have a normal X desktop. Also nice if you're using something with better driver support for X than Wayland, I guess.

In the long term, it means that you can go X → X with Wayland apps → Wayland with X apps → Wayland , for a very gentle transition.

X on Wayland: Necessary if Wayland is to become the main server at some point, since there will be a huge amount of X apps around for a long time.
Wayland on X: Useful if you're using (or writing) a Wayland app but otherwise have a normal X desktop. Also nice if you're using something with better driver support for X than Wayland, I guess.

In the long term, it means that you can go X → X with Wayland apps → Wayland with X apps → Wayland , for a very gentle transition.

First you must understand that there are NO wayland apps. Apps are written in toolkits (gtk qt etc) which most of them have backends for wayland. This means you just have to recompile some stuff and they will work. (there are screenshots floating around of gtk and qt apps). Those few apps that use "pure" X parts can still be displayed with X on wayland.

There are ways now to run wayland in an X environment for testing purposes. Not the way that Martin did but you can.

As for drivers you can use the open stack and it works.

There are many things missing in wayland but this is not the most usefull thing in the world

First you must understand that there are NO wayland apps. Apps are written in toolkits (gtk qt etc) which most of them have backends for wayland. This means you just have to recompile some stuff and they will work. (there are screenshots floating around of gtk and qt apps). Those few apps that use "pure" X parts can still be displayed with X on wayland.

There are ways now to run wayland in an X environment for testing purposes. Not the way that Martin did but you can.

As for drivers you can use the open stack and it works.

There are many things missing in wayland but this is not the most useful thing in the world

At some point we might (should?) get to a state where some things prefer, or only officially support, their Wayland backend. Apps using that backend are then effectively Wayland apps, wouldn't you agree?
While getting there, it'll certainly be interesting to test the Wayland backend to see if your program still looks fine - because you never know when odd bugs sneak in. Again, you'll effectively be running a Wayland app in an X setting - unless you start a pure Wayland environment to test it, ofc.

As for drivers, the open stack is not always the best alternative ... and even when it is, Wayland support isn't always around. I'm on FreeBSD, which has quite decent X support - but as of today, there's no Wayland port. Being able to test Wayland clients easily won't hurt.

And, hell ... what's so wrong with this? Handling it in the kwin compositor seems very sensible.

At some point we might (should?) get to a state where some things prefer, or only officially support, their Wayland backend. Apps using that backend are then effectively Wayland apps, wouldn't you agree?
While getting there, it'll certainly be interesting to test the Wayland backend to see if your program still looks fine - because you never know when odd bugs sneak in. Again, you'll effectively be running a Wayland app in an X setting - unless you start a pure Wayland environment to test it, ofc.

I think the point is that applications don't write against the display server, they write against the toolkit. Apps don't have an X or Wayland backend, they use whatever the toolkit library has been built to use. Maybe games and other 3D apps might actually directly call X functions, but I'm guessing most of them actually utilise and enigine or layer that handles that for them.

First you must understand that there are NO wayland apps. Apps are written in toolkits (gtk qt etc) which most of them have backends for wayland. This means you just have to recompile some stuff and they will work. (there are screenshots floating around of gtk and qt apps).

I can't speak for Qt apps, but with GTK's pluggable backend support in 3.0, you will be able to switch and app from X to Wayland by closing it and then opening it with a different command line switch (as soon as the Wayland backend goes into a GTK release)

I think the point is that applications don't write against the display server, they write against the toolkit. Apps don't have an X or Wayland backend, they use whatever the toolkit library has been built to use. Maybe games and other 3D apps might actually directly call X functions, but I'm guessing most of them actually utilise and enigine or layer that handles that for them.

Certainly - my point was just that at some point, you'll still have a situation where you're either running some apps with a Wayland backend (for testing), or some apps/toolkits strongly prefer Wayland - and then you've got a mix of X and Wayland clients. If there's a majority of X clients, then being able to nicely integrate a few Wayland ones is nice. If there's a majority using Wayland, being able to nicely integrate the leftover X ones is nice.

(Of course, you could do a total everything-at-once switch, but I don't think that's practical for everyone.)

I can't speak for Qt apps, but with GTK's pluggable backend support in 3.0, you will be able to switch and app from X to Wayland by closing it and then opening it with a different command line switch (as soon as the Wayland backend goes into a GTK release)

yeah, once again that's a feature of the toolkit, not the app. The app isn't written to run against X or Wayland, it is written against GTK, and you can pass parameters that ANY GTK app will accept.

Qt apps have the same thing. For example, you can pass in the render method (OpenGL, Xrender). Any app built with Qt automatically get's this functionality

Great way to introduce the Desktop world to Wayland.

This looks like paradise for the developers who:
- Get apps running well in Wayland
- Get the window bar looking right

However there's the risk it will stick since after this, giving up X is a huge compatibility risk for only performance and security gain. But this looks like a great way to introduce the world to Wayland.