Index: src/jalview/bin/HiDPISetting.java =================================================================== diff -u -N -r07d425923a64af71ce7d41a11061abd537e99276 -rb7510c12a0fb9028617e25a4b6edb3cc4011142f --- src/jalview/bin/HiDPISetting.java (.../HiDPISetting.java) (revision 07d425923a64af71ce7d41a11061abd537e99276) +++ src/jalview/bin/HiDPISetting.java (.../HiDPISetting.java) (revision b7510c12a0fb9028617e25a4b6edb3cc4011142f) @@ -68,16 +68,31 @@ // get and use command line property values first String setHiDPIProperty = System.getProperty(setHiDPIPropertyName); - setHiDPI = setHiDPIProperty != null - && setHiDPIProperty.equalsIgnoreCase("true"); + boolean setHiDPIPropertyBool = Boolean.parseBoolean(setHiDPIProperty); + // allow -DsetHiDPI=false to turn off HiDPI scaling + if (setHiDPIProperty != null && !setHiDPIPropertyBool) + { + clear(); + doneInit = true; + return; + } + + setHiDPI = setHiDPIProperty != null && setHiDPIPropertyBool; + String setHiDPIScaleProperty = System .getProperty(setHiDPIScalePropertyName); if (setHiDPIScaleProperty != null) { try { setHiDPIScale = Integer.parseInt(setHiDPIScaleProperty); + // if setHiDPIScale property is validly set and setHiDPI property wasn't + // attempted to be set we assume setHiDPIScale to be true + if (setHiDPIProperty == null) + { + setHiDPI = true; + } } catch (NumberFormatException e) { System.err.println(setHiDPIScalePropertyName + " property give ("