Dave Jarvis' Repositories

git clone https://repo.autonoma.ca/repo/keenwrite.git

Add custom ControlsFX for JDK 17

AuthorDaveJarvis <email>
Date2021-10-03 13:50:52 GMT-0700
Commitca516768ef416d938cdd96d7b7a96dd62b0e60e7
Parent5fb45a1
BUILD.md
Download and install the following software packages:
-* [JDK 16](https://bell-sw.com/pages/downloads/?version=java-16) (Full JDK + JavaFX)
+* [JDK 17](https://bell-sw.com/pages/downloads/?version=java-17) (Full JDK + JavaFX)
* [Gradle 7.2](https://gradle.org/releases)
* [Git 2.33](https://git-scm.com/downloads)
The project is imported into the IDE.
-
-### Configure
-
-Before running the application, add the permissive access option as follows:
-
-1. Open **Launcher.java**.
-1. Click the arrow beside the `Launcher` class.
-1. Click **Modify Run Configuration**.
-1. Click **Modify options**.
-1. Click **Add VM options**.
-1. Set **VM options** to: `--illegal-access=permit`
-1. Click **OK**.
-
-The run settings are configured.
### Run
README.md
On other platforms, start the application as follows:
-1. Download the *full version* of the Java Runtime Environment, [JRE 16](https://bell-sw.com/pages/downloads/?version=java-16).
+1. Download the *full version* of the Java Runtime Environment, [JRE 17](https://bell-sw.com/pages/downloads/?version=java-17).
1. Install the JRE.
1. Open a terminal window.
build.gradle
def moduleSecurity = [
- "--add-modules=javafx.base,javafx.graphics,javafx.swing,javafx.controls,javafx.media,javafx.fxml",
"--add-opens=javafx.controls/javafx.scene.control=ALL-UNNAMED",
"--add-opens=javafx.controls/javafx.scene.control.skin=ALL-UNNAMED",
"--add-opens=javafx.graphics/javafx.scene.text=ALL-UNNAMED",
"--add-opens=javafx.graphics/com.sun.javafx.css=ALL-UNNAMED",
"--add-opens=javafx.graphics/com.sun.javafx.text=ALL-UNNAMED",
- "--add-opens=javafx.controls/javafx.scene.control.skin=org.controlsfx.controls",
- "--add-opens=javafx.graphics/javafx.scene=org.controlsfx.controls",
"--add-exports=javafx.base/com.sun.javafx.event=ALL-UNNAMED",
"--add-exports=javafx.graphics/com.sun.javafx.application=ALL-UNNAMED",
"--add-exports=javafx.graphics/com.sun.javafx.geom=ALL-UNNAMED",
"--add-exports=javafx.graphics/com.sun.javafx.text=ALL-UNNAMED",
"--add-exports=javafx.graphics/com.sun.javafx.scene=ALL-UNNAMED",
- "--add-exports=javafx.graphics/com.sun.javafx.scene=org.controlsfx.controls",
- "--add-exports=javafx.controls/com.sun.javafx.scene.control=org.controlsfx.controls",
- "--add-exports=javafx.controls/com.sun.javafx.scene.control.behavior=org.controlsfx.controls",
- "--add-exports=javafx.controls/com.sun.javafx.scene.control.inputmap=org.controlsfx.controls",
"--add-exports=javafx.graphics/com.sun.javafx.scene.traversal=ALL-UNNAMED",
- "--add-exports=javafx.graphics/com.sun.javafx.scene.traversal=org.controlsfx.controls",
- "--add-exports=javafx.base/com.sun.javafx.event=org.controlsfx.controls",
- "--add-exports=javafx.base/com.sun.javafx.collections=org.controlsfx.controls",
- "--add-exports=javafx.base/com.sun.javafx.runtime=org.controlsfx.controls"
]
javafx {
- version = "16"
+ version = "17"
modules = ['javafx.controls', 'javafx.swing']
configuration = 'compileOnly'
// JavaFX
- implementation 'org.controlsfx:controlsfx:11.1.0'
+ //implementation 'org.controlsfx:controlsfx:11.1.0'
implementation 'org.fxmisc.richtext:richtextfx:0.10.6'
implementation 'org.fxmisc.wellbehaved:wellbehavedfx:0.3.3'
}
- testImplementation "org.junit.jupiter:junit-jupiter-api:5.8.1"
- testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine:5.8.1'
+ testImplementation "org.junit.jupiter:junit-jupiter-api:${v_junit}"
+ testRuntimeOnly 'org.junit.jupiter:junit-jupiter-engine'
testImplementation "org.testfx:testfx-junit5:4.0.16-alpha"
keenwrite.sh
java \
- --illegal-access=permit \
- --add-modules javafx.swing,javafx.controls,javafx.fxml,javafx.media,javafx.web,javafx.base,javafx.graphics \
--add-opens=javafx.controls/javafx.scene.control=ALL-UNNAMED \
--add-opens=javafx.controls/javafx.scene.control.skin=ALL-UNNAMED \
libs/controlsfx-11.1.1.jar
Binary files differ
src/main/java/com/keenwrite/ui/logging/LogView.java
/**
* Number of error messages to retain in the {@link TableView}; must be
- * greater than zero.
+ * greater than zero. Typesetting the document can cause many page number
+ * messages to be logged.
*/
- private static final int CACHE_SIZE = 150;
+ private static final int CACHE_SIZE = 500;
private final ObservableList<LogEntry> mItems = observableArrayList();
Delta9 lines added, 35 lines removed, 26-line decrease