mirror of
https://github.com/vitorpamplona/amethyst.git
synced 2026-10-29 23:27:44 +00:00
A Linux desktop at 125% or 150% tells X11 apps through Xft.dpi, but AWT only takes whole scales there, so the app drew at 100%: sharp but too small. That is also what JetBrains suggests for blurry fractional scaling on Wayland (JBR-10582): XWayland with KDE's "legacy apps apply scaling themselves", which only works if the app scales itself. DesktopUiScale reads Xft.dpi (XSETTINGS, then the X resource database via JNA; AMETHYST_SCALE overrides) and AppWindow and the crash dialog raise Compose's density by what AWT left out. Measured on Xvfb at Xft.dpi 120: a 1-px checkerboard stays pure black and white at the right size. LocalDensity no longer equals AWT's scale there, so the two places that converted AWT coordinates with it (fullscreen overlay origin, gutter wheel redispatch) now read the component's own AWT scale. The default window size cap scales with it. Native Wayland, macOS and Windows are unchanged. JNA (LGPL-2.1+ or Apache-2.0, used under Apache-2.0) was already shipped through nestsClient; desktopApp now declares it. Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> Claude-Session: https://claude.ai/code/session_01YFyERkpgRiWgXWyc5Jg7Xa