Multi monitor HIDPI in X11 compatibility mode

Nikita Gubarkov nikita.gubarkov at
Mon Feb 13 21:23:36 UTC 2023

It doesn't require Wayland in order to run as before,
but if Wayland is available at runtime (dlsym), it will use it to get
per-monitor scaling.
AFAIU mainline currently mostly works with XWayland, right?
If so, probably this can even help the mainline, not only sandbox?

And yes, it still reports integer scales, I didn't find a way to get
fractional scaling,
Wayland protocol itself has only integer wl_output::scale.

On Fri, Feb 10, 2023 at 10:48 PM Philip Race <philip.race at> wrote:

> If it needs Wayland, then it might be something that should go into the
> sandbox
> for the Wakefield project ... perhaps that is what you are intending here ?
> Until that project adds support back into main line for Wayland's X11
> compat
> mode we only support running on, so there won't be a wayland
> server to query,
> so this fix can't help mainline today.
> I presume this code would still report integer scales ?
> My understanding is Wayland by design does not support fractional scales.
> -phil.
> On 2/2/23 2:47 PM, Nikita Gubarkov wrote:
> > JetBrains Runtime has support for per-monitor scaling in X11 mode
> > implemented a few months ago.
> >
> > At first I tried to use the GTK library for reading the scales as
> > suggested in, but in a
> > multi-monitor environment it is always returning scale of the main
> > display when running with X11 backend.
> > The final solution was to connect to Wayland just to read the scaling
> > values and then do a huge refactoring to make AWT's X11-related code
> > respect these individual scaling values.
> > For coordinate conversions I took the same approach that was used in
> > Windows -
> > There were some issues that I was unable to solve, like the window
> > title bar is always scaled with the main monitor's scale no matter
> > what monitor the window is on, the same with mouse cursor when it's
> > over the window, but overall it seems to work.
> >
> > I can try porting this into OpenJDK and create a PR if needed.
> >
> > JBR issue:
> > Code:
> >
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <>

More information about the wakefield-dev mailing list