I can't think of a concise way of wording this. I have three monitors. Each has the same resolution - 1920x1080px. But each one has a different physical size - 61 cm monitor, 39 cm laptop, and 48 cm monitor.
Here's my problem. When I move a window from one screen to another, the window changes size.
It contains the same number of pixels, but it has different physical dimensions. Here's one window, stretched across all three screens:
As you can see, the blue bar is a different thickness on each screen.
I can change the relative vertical placement of each monitor fairly easily. So I can line up the top of each screen, but that doesn't help with the sizing.
What I want, is something like this screenshot from SuperPaper Wallpaper manager.
That app correctly detects the physical dimensions of my screens and displays them correctly. How can I get Ubuntu / Pop OS / Wayland to do the same?
I'm using a modern Wayland display server. To enable Fractional Scaling, I run:
gsettings set org.gnome.mutter experimental-features "['scale-monitor-framebuffer']"
And then reboot. Then I get these options per display.
That's great - but intervals of 25% just aren't fine grained enough from me. And, because my external screens are larger than my internal screens, I need them to have a smaller scaling factor. Assuming my laptop is 100%, I need one monitor to be 90% and the other to be 66%.
There's a Gnome bug open since 2017 - but no fix yet.
I could set my laptop's screen to be 150% and the other screens to be 100% and 125% - but that makes everything on my main screen far too large.
Ideally, I'd like to tell Linux the physical dimensions of my monitors, and their placement, then let it work out the fine detail. But I'll settle for some command line fiddling.
To be clear, this isn't a problem with HiDPI - all my screens are less than 4K.
If you have a suggestion for how to independently underscale individual displays using Wayland - I'd love to know!
- It'll look blurry
- Maybe, but the myth of the pixel grid is something I've explained before. But my eyesight isn't amazing. I just want consistency.
- Not every component can scale
- The modern Linux operating system mostly uses SVG for icons, and fonts are designed to scale. So I don't see why that would be the case.
- It'll spike your CPU / GPU
- I'm always tethered to power when I'm using multiple monitors. And I'm mostly not running computationally intensive apps.
- Stop being so obsessive