4 ms·
My desktop text editor[1] is written using JavaFX and leans on Warp Packer[2] to create installer-free, multi-platform executable binaries (without jlink). A us
by thangalin 5y ago
My desktop text editor[1] is written using JavaFX and leans on Warp Packer[2] to create installer-free, multi-platform executable binaries (without jlink). A user contributed a new dark theme[3], which blends nicely with the desktop.
The JavaFX-based WebView (an HTML rendering component) is lauded, but has no direct API to control the scroll position and is itself a memory hog. Scrolling must be handled through JavaScript, and that indirection is as unwieldy as you can probably imagine. FlyingSaucer is a workable alternative to WebView, but comes with numerous technical issues that rear themselves when embedding a Swing widget inside a JavaFX application---as I discovered during development.
Were I to start from scratch, I would definitely seek out alternative cross-platform programming languages for desktop application development. The JavaFX event-based model is top-notch, but there are too many technical gremlins to make implementation a smooth ride. (Such as improper handling of Alt+Tab, which leaves focus on the menu bar when returning to the application[4].)
[1]: https://github.com/DaveJarvis/keenwrite https://github.com/DaveJarvis/keenwrite
[2]: https://github.com/dgiagio/warp https://github.com/dgiagio/warp
[3]: https://i.ibb.co/QpqS0NS/screenshot.png https://i.ibb.co/QpqS0NS/screenshot.png
[4]: https://stackoverflow.com/q/65765656/59087 https://stackoverflow.com/q/65765656/59087
- joshmarinacci 5y agoWow, someone is still using Flying Saucer? That brings back such memories. I'm glad to know it helped some people.