We are writing the year 2018 and it will not be the year of Linux again! I'm working on Wayland since the beginning of the year (full time!), but it's not that satisfying with a mixed/multi dpi setup.

I really don't need many applications:

  • PHPStorm
  • Chrome
  • Terminal
  • Docker (For me that's the only reason for Linux actually!)
  • Mail Client

So I'm using one native application: Terminal

This is the only one which is running as excepted on all monitors! When switching the app from one monitor to another with different dpi it's scaled automatically correct! That's what I'm expecting.

What I've found out yet:

  • Electron apps are not able to use the scale factor of Wayland
  • Java apps are not able to use the scale factor of Wayland
  • Chrome/Chromium/Firefox is not able to use the scale factor of Wayland

So I'm not sure where the problem is really located? In Mutter? In Electron? In Swing? In Chrome? In Chromium? In Firefox?

I hope someone can point me into the right direction to find out what I need to wait for.


Solution 1:

Scaling on Wayland is handled by the application, in practice that means the toolkit (GTK, QT, etc.) (support status). GTK 3 apps (like GNOME Terminal) are fine, as you've found.

Firefox has come a long way, but menus don't position correctly yet (issue and related) - a development version is available here. Thunderbird would hopefully follow after Firefox. For Chromium work is underway, but it isn't finished either. Electron uses Chromium under the hood, so that can't be fixed until Chromium is done.

Because these apps don't fully support Wayland yet, they still use the X11 protocol with XWayland, which doesn't handle MultiDPI well (GNOME has ideas, but I doubt whether this will happen).

So I guess you'll have to wait until all applications support Wayland, but there are some workarounds that may be useful to some. Archlinux has some notes on HiDPI and Wayland, for example.

Solution 2:

I created a fairly detailed question and answer about the issues I had with UHD screens.

Any attempts at scaling the external monitor or laptop screen caused blurry fonts.

For me this is a bigger issue than scaling of applications as I'm mostly staring at the terminal.

In the end I just gave up and accepted the default scaling (which on my UHD 3840x2160 laptop is 200%) and kept that the same as the monitor (3440 x 1440). I then put my terminal windows on the monitor and adjust the font size. Once I disconnect from the monitor I adjust the terminal font settings back. I could do this with separate font profiles but I prefer to be able to adjust all my terminal windows at once.