In this issue I'll describe a problem (that I have) with sway's HiDPI support and a suggestion of a solution.
Problem
I use a single monitor, that is HiDPI, and I can't have every application scaled properly unless I use the default scaling of 1 and configure each application separately.
If I am using i3, I only need to set the Xft.dpi property of Xresources (Xft.dpi: 192 for a 2x scale) to scale every program properly, i.e. no blurry text.
However, in sway, setting the scale property (output <name> scale 2 for 2x scale) scales some programs nicely and makes the others twice as big but blurry. As far as I can tell, the blurry programs are X-native and the properly scaled programs (i.e. not blurry) are Wayland-native.
native-scale configuration option
My suggestion is to add the option of not scaling the non Wayland-native programs, i.e. scale only what can be scaled properly (the native Wayland programs) and let the user deal with the other programs. This would result in a native-scale output option. If this is implemented sway's users would be able to have properly scaled X-programs by setting Xft.dpi and properly scaled Wayland-programs by setting native-scale in sway.
Multi-monitor users
Multi-monitor users could (1) keep using scale, ignoring this new option, or (2) use native-scale for Wayland-programs and use something X-specific that is able to scale X-programs according to the monitor it's being displayed at (not sure if this exists).
In this issue I'll describe a problem (that I have) with sway's HiDPI support and a suggestion of a solution.
Problem
I use a single monitor, that is HiDPI, and I can't have every application scaled properly unless I use the default scaling of 1 and configure each application separately.
If I am using i3, I only need to set the
Xft.dpiproperty of Xresources (Xft.dpi: 192for a 2x scale) to scale every program properly, i.e. no blurry text.However, in sway, setting the
scaleproperty (output <name> scale 2for 2x scale) scales some programs nicely and makes the others twice as big but blurry. As far as I can tell, the blurry programs are X-native and the properly scaled programs (i.e. not blurry) are Wayland-native.native-scaleconfiguration optionMy suggestion is to add the option of not scaling the non Wayland-native programs, i.e. scale only what can be scaled properly (the native Wayland programs) and let the user deal with the other programs. This would result in a
native-scaleoutput option. If this is implemented sway's users would be able to have properly scaled X-programs by settingXft.dpiand properly scaled Wayland-programs by settingnative-scalein sway.Multi-monitor users
Multi-monitor users could (1) keep using
scale, ignoring this new option, or (2) usenative-scalefor Wayland-programs and use something X-specific that is able to scale X-programs according to the monitor it's being displayed at (not sure if this exists).