3 ms·
> 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
by 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.