...
You can select one of the specific back-ends of Monocle with the system property monocle.platform
. Some of the back-ends work only with hardware rendering (the es2
pipeline); some work only with software rendering (the sw
pipeline).
monocle.platform | prism.order options | Hardware on which this might work |
---|---|---|
MX6 | es2 (default) or sw | Freescale i.MX6 SDP or similar boards. Needs accelerated Vivante graphics drivers for framebuffer; not all OS configurations have these. |
OMAP | es2 (default) or sw | BeagleBoard xM. Note that the es2 pipeline requires PowerVR graphics drivers, which are only available on soft float configurations of Linux on the BeagleBoard. |
OMAPX11 | es2 | BeagleBoard xM. Renders the JavaFX window stack to a single X11 window. |
X11 | es2 | BeagleBoard; Linux/x86 desktop |
Linux | sw | Any Linux system; uses software rendering |
Headless | sw | Any system |
VNC | sw | Any system |
If you are running the desktop build of JavaFX or OpenJFX then your only monocle option is Headless. Desktop JavaFX does not support the javafx.platform
system property, but you can select Monocle with:-Dglass.platform=Monocle -Dmonocle.platform=Headless -Dprism.order=sw
On MacOS and Windows, removing -Dprism.order=sw
can be critical to prevent crashes.
Status
What's working:
- Accelerated rendering on Freescale i.MX6, BeagleBoard xM and Raspberry Pi
- Mouse, key and single-point/multi-point touch input with Linux device nodes
- Synthesis of mouse events from touch events
- Double-buffered software rendering to memory-mapped /dev/fb0, with a software cursor
- Hardware cursors on OMAP3, i.MX6 and Raspberry Pi
- Touch coordinate transformations for screen calibration
- Pluggable pipeline for touch event cleanup
- Nested event loops
- Robot input and capture
- HelloSanity is working on Freescale i.MX6, BeagleBoard xM and Raspberry Pi
- Headless implementation running on embedded and desktop platforms, passing unit and system tests (base/graphics tests, system tests and Linux input tests)
- VNC server mode with remote display and mouse input
- Mouse input and accelerated rendering on X11
- Drag and Drop
- Full screen and minimized windows
...
See Porting JavaFX to additional embedded Linux devices