Programs mostly use Qt/GTK/EFL and OpenGL or things like SDL. Those are the parts that decide if an application is compatible with a display infrastructure (X, Wayland,... well, even Mir).
Your program looses compatibility with X when the library you use does. Some are built so that the display backend can be choosen at runtime. From what I see, one backend will be deleted with a commit message like "this has been broken for two years and nobody even noticed".
I expect Xwayland to keep working for a very long time. I hope because I still hope to play the handful of linux native games I own.
Of course, compatibility is never an easy thing. You *can* expect things to break from time to time if nobody tests and reports less used backends.
> it brings to mind gnome 3 and Windows 8 / Metro
Gnome3/Metro are (AFAIK, I never used Metro) user interface and user visible changes.
X->Wayland is a technical change. The user should be (ideally) presented exactly the same UI with Wayland that it was with X.
There will be minor (for the user) changes, like the way screensavers/screenlock and screenshot functionalities are exepcted to change, but apart that, the user should not see anything different (except early adopter, those who test, report etc.)
Yes, I'm aware of my heavy use of "should" :)
Copyright © 2017, Eklektix, Inc.
Comments and public postings are copyrighted by their creators.
Linux is a registered trademark of Linus Torvalds