• penquin
    link
    fedilink
    arrow-up
    2
    arrow-down
    1
    ·
    1 month ago

    Thank you so much. Is there a reason why we have so many issues with scaling and font rendering and the other two OSs don’t (I’m not sure if they and they hide it, I don’t know). I tried gnome on my pc and the font got very blurry when I set the scaling to 175% for my 27" 4k monitor, switched to x and fraction scaling just disappeared. Why don’t the other two OSs have this issue?

    • azvasKvklenko@sh.itjust.works
      link
      fedilink
      English
      arrow-up
      1
      ·
      1 month ago

      That’s a very long story, but in short - X11 was adopted as display system for Linux in 90’s at the very beginning because it was the only standard display protocol for UNIX systems at that time and it was natural consequence to take it along with the ability to port all the software that was made for it starting in 80s. The design of X started to quickly show its limitations and a replacement was considered. Wayland development was slow for a long time, because the priority was on usability of current graphics stack, which on X it was all in pretty bad shape even not so long ago. X is really not going anywhere with its feature while and only being in maintenance. Additionally, Wayland is very different and in some aspects, so it’s not possible to port things 1:1.

      Initially Wayland only supported integer scaling (if you used fractional scale in such scenario, it would render next integer and downscale to your resolution, causing some font rendering imperfections), but new protocol was introduced last year after years of debates and different attempts. New compositors paired with new clients will now render mostly perfectly in fractional scales, but clients that don’t support that will still use previous method. There are also X apps running on Xwayland. Some compositors (like kwin) allow those clients to render natively scaled, some upscale from 100%, so the windows are blurry.

      Other OS-es don’t have such problems, because:

      • they’re centrally controlled by just one entity with clear business strategy and unlimited budget
      • in monolithic systems where there’s just one UI and everything is tightly integrated, it’s much easier to innovate the software
      • closed source code don’t have to be perfect, they can hack it as much as they need as long as it’s doing well on end-users’ machine