3 ms·
To this day wayland does not do fractional scaling. It just blurries individual windows a la macOS. The only toolkit around here that can do actual fractional
by AshamedCaptain 5y ago
To this day wayland does not do fractional scaling. It just blurries individual windows a la macOS.
The only toolkit around here that can do actual fractional scaling is Qt. Which is why all gtk based DEs like xfce are at a disadvantage.
- cycomanic 5y agoThat's not true, fractional scaling works fine both in sway and gnome on wayland. There was an issue with fractional scaling of xwayland windows, which caused blurriness, but I think this has been fixed a while ago (I can't see the blurriness anymore).
- AshamedCaptain 5y agoGtk does not do fractional scaling at all. It just does integer scaling then relies on the compositor to zoom in/out the window as necessary. This results in blurriness and poor performance. Qt can do true arbitrary fractional scaling, which has other problems.
- nextaccountic 5y ago> Gtk does not do fractional scaling at all. It just does integer scaling then relies on the compositor to zoom in/out the window as necessary. This results in blurriness and poor performance. Are you sure? Maybe you mean on X11? I'm running Gnome on Wayland and with this setting: > gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']" I get not blurriness at all. I'm actually kind of paranoid about this issue so can you maybe point me to some online docs describing this issue?
- AshamedCaptain 5y agoThis is a toolkit problem, it has nothing to do with wayland or x11. See https://developer.gnome.org/gdk3/stable/gdk3-Windows.html#gdk-window-get-scale-factor https://developer.gnome.org/gdk3/stable/gdk3-Windows.html#gd... , gtk just supports integers as an scaling factor. The mutter setting you are mentioning just enables framebuffer scaling (ie bitmap, http://blog.3v1n0.net/informatica/linux/gnome-fractional-and-multi-monitor-scaling-hackfest-the-report/ http://blog.3v1n0.net/informatica/linux/gnome-fractional-and... ). It will first ask gtk to render at the next integer scale then zoom out the resulting bitmap as necessary. This definitely results in blurriness that I do not see on windows (but you can see on macOS). Compare Qt which does support true fractional scaling albeit as I was saying this leads to another significant problem https://doc.qt.io/qt-5/qt.html#HighDpiScaleFactorRoundingPolicy-enum https://doc.qt.io/qt-5/qt.html#HighDpiScaleFactorRoundingPol... , but it does often result in a level of sharpness that cannot be matched, and it is trivial to see when you compare gtk with qt programs.