diff --git a/diylc/diylc-core/src/org/diylc/presenter/update.xml b/diylc/diylc-core/src/org/diylc/presenter/update.xml
index 3b1a8dab..7f79307d 100644
--- a/diylc/diylc-core/src/org/diylc/presenter/update.xml
+++ b/diylc/diylc-core/src/org/diylc/presenter/update.xml
@@ -3250,6 +3250,10 @@
2020-11-19 00:00:00.000 CET
+
+ NEW_FEATURE
+ Windows: bundle Java JRE with the installation to avoid Java version issues
+
NEW_FEATURE
macOS: added quick action toolbar that was already available for other platforms
diff --git a/diylc/diylc-library/lib/diylc-core.jar b/diylc/diylc-library/lib/diylc-core.jar
index 39a1b732..e67474b4 100644
Binary files a/diylc/diylc-library/lib/diylc-core.jar and b/diylc/diylc-library/lib/diylc-core.jar differ
diff --git a/diylc/diylc-swing/diylc.exe b/diylc/diylc-swing/diylc.exe
index bf62f300..a05ea6b2 100644
Binary files a/diylc/diylc-swing/diylc.exe and b/diylc/diylc-swing/diylc.exe differ
diff --git a/diylc/diylc-swing/install.iss b/diylc/diylc-swing/install.iss
index fd64bc66..4e73ab1b 100644
--- a/diylc/diylc-swing/install.iss
+++ b/diylc/diylc-swing/install.iss
@@ -13,7 +13,6 @@ AlwaysShowDirOnReadyPage=yes
[Files]
Source: "diylc.exe"; DestDir: "{app}"
-Source: "diylc.l4j.ini"; DestDir: "{app}"
Source: "icons\diylc_file.ico"; DestDir: "{app}"
Source: "build\jar\diylc.jar"; DestDir: "{app}"
Source: "build\jar\lib\*"; DestDir: "{app}\lib"
@@ -21,6 +20,7 @@ Source: "build\jar\library\*"; DestDir: "{app}\library"
Source: "themes\*"; DestDir: "{app}\themes"
Source: "lang\*"; DestDir: "{app}\lang"
Source: "fonts\*"; DestDir: "{app}\fonts"
+Source: "jre\win\jre1.8.0_211\*"; DestDir: "{app}\jre"; Flags: ignoreversion recursesubdirs
Source: "innosetup\donate.bmp"; DestDir: "{tmp}"; Flags: dontcopy nocompression
[Registry]
diff --git a/diylc/diylc-swing/launch4j.xml b/diylc/diylc-swing/launch4j.xml
new file mode 100644
index 00000000..7f3980f4
--- /dev/null
+++ b/diylc/diylc-swing/launch4j.xml
@@ -0,0 +1,34 @@
+
+
+ true
+ gui
+ diylc.jar
+ C:\Users\bancika\git\diy-layout-creator\diylc\diylc-swing\diylc.exe
+
+
+ .
+ normal
+ http://java.com/download
+
+ false
+ false
+
+ C:\Users\bancika\git\diy-layout-creator\diylc\diylc-swing\icons\diylc.ico
+
+ org.diylc.DIYLCStarter
+ lib
+
+
+ jre
+ false
+ false
+ 1.8.0
+
+ preferJre
+ 32/64
+ 512
+ 1024
+ -Dorg.diylc.scriptRun=true
+ -Dfile.encoding=UTF-8
+
+
\ No newline at end of file
diff --git a/diylc/diylc-swing/lib/diylc-core.jar b/diylc/diylc-swing/lib/diylc-core.jar
index 39a1b732..e67474b4 100644
Binary files a/diylc/diylc-swing/lib/diylc-core.jar and b/diylc/diylc-swing/lib/diylc-core.jar differ
diff --git a/diylc/diylc-swing/library/main.jar b/diylc/diylc-swing/library/main.jar
index de1ab583..bccf77f1 100644
Binary files a/diylc/diylc-swing/library/main.jar and b/diylc/diylc-swing/library/main.jar differ
diff --git a/diylc/diylc-swing/src/org/diylc/DIYLCStarter.java b/diylc/diylc-swing/src/org/diylc/DIYLCStarter.java
index bdba31a2..2e1b397f 100644
--- a/diylc/diylc-swing/src/org/diylc/DIYLCStarter.java
+++ b/diylc/diylc-swing/src/org/diylc/DIYLCStarter.java
@@ -71,6 +71,16 @@ public class DIYLCStarter {
* @throws InvalidActivityException
*/
public static void main(String[] args) {
+ try {
+ runDIYLC(args);
+ } catch (Throwable t) {
+ LOG.error("Major error while starting DIYLC", t);
+ System.out.println("Major error while starting DIYLC");
+ t.printStackTrace(System.out);
+ }
+ }
+
+ public static void runDIYLC(String[] args) {
// Initialize splash screen
DIYLCSplash splash = null;
Exception splashException = null;
@@ -106,6 +116,7 @@ public class DIYLCStarter {
LOG.debug("Java version: " + System.getProperty("java.runtime.version") + " by "
+ System.getProperty("java.vm.vendor"));
+ LOG.debug("Java home: " + System.getProperty("java.home"));
LOG.debug("OS: " + System.getProperty("os.name") + " " + System.getProperty("os.version"));
LOG.info("Starting DIYLC with working directory " + System.getProperty("user.dir"));
@@ -170,7 +181,8 @@ public class DIYLCStarter {
String val = System.getProperty(SCRIPT_RUN);
if (!"true".equals(val)) {
- int response = JOptionPane.showConfirmDialog(null,
+ LOG.info("Detected no scriptRun setting!");
+ int response = JOptionPane.showConfirmDialog(splash,
"It is not recommended to run DIYLC by clicking on the diylc.jar file.\n"
+ "Please use diylc.exe on Windows or run.sh on OSX/Linux to ensure the best\n"
+ "performance and reliability. Do you want to continue?",