3 ms·
> Problem solved! Not so fast! Are you going to patch it to decade old binaries? How are you going to handle that Wordperfect from 1998? It certainly won't re
by vetinari 6y ago
> Problem solved!
Not so fast!
Are you going to patch it to decade old binaries? How are you going to handle that Wordperfect from 1998? It certainly won't respect you new protocol.
How the compositors are supposed to handle that?
If you are not going to handle it, and just let it behave as it behaves today, you are still not achieving your goal of scaling all clients properly, and kind of throwing away that 30 years of development by making it unusable anyway.
- AshamedCaptain 6y agoHow are you going to change those decade old binaries to work with Wayland??? At least if you don't throw X11, those decade old binaries still work. If you throw X11, they will not! You need to put in some type of kludge which is the reason this article exists in the first place (e.g. copy paste will work randomly). And if the toolkit is linked dynamically, you are very lucky... Not to mention that a more realistic scenario is that you have to update a 20 year old toolkit to support multiple DPIs, in which case it is much easier if you just have to read the property from a different place rather than having to target a different display protocol entirely. You made the program vendors life easier at the cost of making yours harder...
- vetinari 6y agoWith Xwayland. On hidpi display they will be upscaled and blurry, but at the right size and they will work in the first place. Even window grabbing will work, albeit only with other Xwayland clients.
- AshamedCaptain 6y agoXwayland is the kludge I was talking about (and this article). No reason your "classic" X11 compositor cannot scale and make any windows blurry, either. No changes required to the client code at all, but some are required to X11 itself, e.g. https://www.youtube.com/watch?v=BrK4c7iFJLs https://www.youtube.com/watch?v=BrK4c7iFJLs
- vetinari 6y agoX11 is the kludge. Xwayland is the symptom. If anything, Xwayland is too nice and too seamless; it should get Xquartz treatment. The point of blurry scaled windows is, that X11 compositors cannot tell which clients are DPI aware and which are not. If you run Chrome, it can render itself properly for HiDPI; if you run Gimp (the Gtk2 one), it won't, it needs to be scaled, Meanwhile, the compositor is none the wiser, which is which, which needs to be scaled and which doesn't. So Xwayland lies to them all about real dpi, and upscales everything. For Wayland native clients, there is a property that the compositor can take into the account. Theoretically you could make X11 windows property for the same effect, and define new events for display/scale changes, but good luck persuading anyone to use it in the next 10 years ("it works in the current Ubuntu LTS, we are fine, no need to add anything").
- AshamedCaptain 6y ago> The point of blurry scaled windows is, that X11 compositors cannot tell which clients are DPI aware and which are not. I Just make a new property, and make those DPI-aware clients set it! You could even make a small utility program that sets it on _other clients_, e.g. "windows created by these binaries get the DPI-aware property set automatically because I know it". This would be trivial to write in X11, but becomes again Mission Impossible in Wayland (you have to edit every display server -- Gnome's, KDE's, etc. -- in existence). > For Wayland native clients, there is a property that the compositor can take into the account. Theoretically you could make X11 windows property for the same effect, and define new events for display/scale changes, but good luck persuading anyone to use it in the next 10 years Yes, exactly. But it is going to be much harder to make anyone support Wayland within the next 10 years, since it brings its own share of problems and because of "the devil you know". E.g. can Firefox already screen grab from Wayland these days? From non-Gnome Wayland? Will Zoom ever do it? And work with any Wayland display server other than Gnome's? It is a mess, and has been so for a decade already. And that is why we get this article.
- vetinari 6y ago> Just make a new property, That's the easy part. > and make those DPI-aware clients set it! That's the difficult part. You are welcome to try, though! > You could even make a small utility program that sets it on _other clients_, e.g. "windows created by these binaries get the DPI-aware property set automatically because I know it". Yes, another hack to keep on piles on other hack. Why would anyone want nice, clean solution, when a hack does? > E.g. can Firefox already screen grab from Wayland these days? Firefox can do screen recording/screen sharing under Wayland these days. Hardware encoding for WebRTC is in the works; that's something they would not be able to efficiently do under X11 at all. > Will Zoom ever do it? That's the question for Zoom. If we kick them as Apple does, they will. If we lay down and keep piling hacks on top of other hacks, they won't see the point. > And work with any Wayland display server other than Gnome's? That's a question you have to ask the authors of any Wayland display server other than Gnome's. > It is a mess, and has been so for a decade already. And that is why we get this article. It is a mess, because some people are too hung up on their current ball of mud and cannot see further than their personal desktop. Then they write articles like this and try to drag down others to the level of their ball of mud.
- alpaca128 6y ago> Are you going to patch it to decade old binaries? How are you going to handle that Wordperfect from 1998? The same way Apple handles a PowerPC-compiled application from 1998. By incrementing to a new major version number, and stating in the changelog that users are free to keep running the older version if their software won't be patched. Does Wayland provide a better solution than that? No, and in addition it also breaks a lot of newer applications. We don't need to do a lot of math to figure out more people would miss Xorg than Wordperfect.
- vetinari 6y ago> The same way Apple handles a PowerPC-compiled application from 1998. It doesn't handle them at all. There was a transition mechanism, to get users updated, but it wasn't maintained long term. You could not run PowerPC binaries from 1998 in 2005. Apple expected their users to update the binaries for new architecture in the long term. In many cases, not only ISA and ABI changed, APIs too; good luck if your application used Quickdraw. (Yes, I still do have coasters in the basement). So compared to that, Wayland's Xwayland is too nice and too longterm.