JAL-3503 Added a Startup tab in Preferences, with gui for JVMMEMMAX and JVMMEMPC...
[jalview.git] / getdown / src / getdown / core / src / main / java / com / threerings / getdown / data / Application.java
index 2022750..468796c 100644 (file)
@@ -31,7 +31,8 @@ import java.util.zip.GZIPInputStream;
 
 import jalview.bin.HiDPISetting;
 import jalview.bin.MemorySetting;
-//import com.install4j.api.launcher.Variables;
+import jalview.bin.LaunchUtils;
+import jalview.util.ChannelProperties;
 
 import com.threerings.getdown.util.*;
 // avoid ambiguity with java.util.Base64 which we can't use as it's 1.8+
@@ -1181,6 +1182,26 @@ public class Application
             continue;
           }
         }
+
+        // use saved preferences if no cmdline args
+        File channelProps = getLocalPath(ChannelProperties.CHANNEL_PROPERTIES_FILENAME);
+        if (channelProps.exists()) {
+          try {
+            InputStream is = new FileInputStream(channelProps);
+            ChannelProperties.loadProps(is);
+          } catch (IOException e) {
+            log.error(e.getMessage());
+          }
+        }
+        boolean useCustomisedSettings = Boolean.parseBoolean(LaunchUtils.getUserPreference(MemorySetting.CUSTOMISED_SETTINGS));
+        if (useCustomisedSettings) {
+          if (jvmmempc == null) {
+            jvmmempc = LaunchUtils.getUserPreference(MemorySetting.MEMORY_JVMMEMPC);
+          }
+          if (jvmmemmax == null) {
+            jvmmemmax = LaunchUtils.getUserPreference(MemorySetting.MEMORY_JVMMEMMAX);
+          }
+        }
         
         // add the memory setting from jvmmempc and jvmmemmax
         long maxMemLong = -1;