XWayland is the bridging mechanism between legacy Xorg programs and Wayland compositors.
XWayland currently looks pixelated/blurry on HiDPI screens, due to Xorg’s inability to scale. There are attempts to add a standard scaling mechanism, such as MR 733.
You can use this MR’s wlroots implementation in Hyprland by making a few changes.
Have the latest
xwaylandpackage patched with at least the HiDPI patch (based on the MR’s implementation, but updated).
Make sure you have the required Hyprland
wlroots, patched with the HiDPI xwayland patch and this commit reverted. This is important, as not reverting it will make opening XWayland programs crash Hyprland.
Add this line to your configuration:
exec-once=xprop -root -f _XWAYLAND_GLOBAL_OUTPUT_SCALE 32c -set _XWAYLAND_GLOBAL_OUTPUT_SCALE 2
and configure toolkits to scale using their specific mechanisms, such as
export GDK_SCALE=2 export XCURSOR_SIZE=32
The GDK_SCALE variable won't conflict with wayland-native GTK programs.