Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Migration of unmigrated content due to installation of a new plugin

...

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.platformprism.order optionsHardware on which this might work
MX6es2 (default) or swFreescale i.MX6 SDP or similar boards. Needs accelerated Vivante graphics drivers for framebuffer; not all OS configurations have these.
OMAPes2 (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.

OMAPX11es2BeagleBoard xM. Renders the JavaFX window stack to a single X11 window.
X11es2BeagleBoard; Linux/x86 desktop
LinuxswAny Linux system; uses software rendering
HeadlessswAny system
VNCswAny 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