HiDPI scaling ignored in Jabref 5.2

I upgraded to Jabref 5.2 today (downloaded and installed the DEB file on Ubuntu 20.04), from Jabref 5.0. I have a hidpi display and previously adjusted the screen scaling according to the installation documentation:

This worked fine with JabRef 5.0, but with 5.2 the -Dglass.gtk.uiScale setting is ignored and everything appears very small, irrespective of the value set for uiScale.

My current configuration file at /opt/jabref/lib/app/JabRef.cfg:

[Application]
app.mainmodule=org.jabref/org.jabref.gui.JabRefLauncher

[JavaOptions]
-Dglass.gtk.uiScale=1.5

I have not tried the standalone version as I would like to avoid manually creating all the application startup shortcuts and the DEB does this automatically. Any ideas?

Edit: the standalone version also does not work. I was assuming it is distributed as a jar file but it is not, otherwise I could have tried to launch the option on the command line à la
java -Dglass.gtk.uiScale=1.5 -jar JabRef.jar

1 Like

Hi,

The issue with the HiDPI scaling is a Java(FX) bug which will be hopefully fixed in the next version.
Meanwhile, you can find the script which calls JabRef with parameters in the file
JabRef/lib/runtime/bin/JabRef

"$DIR/java"  -p "$DIR/../app" -m org.jabref/org.jabref.gui.JabRefLauncher  "$@"

I guess the deb file also just calls this. So you could add the option -Dglass.gtk.uiScale=1.5 before the -p argument

2 Likes

Thanks for the pointer, this worked after an additional workaround. :+1:

After the deb installation, the executable file in the path is a link
/opt/bin/jabref -> /opt/jabref/bin/JabRef

However, the target file is a binary file, and executing this does not respect any changes made to the script /opt/jabref/lib/runtime/bin/JabRef. By changing the link in /opt/bin to point to the script /opt/jabref/lib/runtime/bin/JabRef rather than the binary executable /opt/jabref/bin/JabRef, I could get it to work.

2 Likes

For anyone else having this trouble, I did not see the link referred to here after installing the DEB. After altering the script suggested by @Siedlerchr, I had to edit /opt/jabref/lib/jabref-JabRef.desktop as follows: replace the line Exec=opt/jabref/bin/JabRef with Exec=/opt/jabref/lib/runtime/bin/JabRef. After that, JabRef launches from the application shortcut while respecting the scaling factor.

2 Likes