Monocle in 8u25
hastebrot at gmail.com
Sat Nov 15 15:49:49 UTC 2014
Regarding (2) "requires interactions to be run withing the JavaFX thread":
Nearly all integration tests for TestFX pass now. However the interactions
freeze when using Glass robot, Node.startDragAndDrop() and
ClipboardContent.putString() together. I guess the timing with
Platform.runLater() needs some work.
Regarding (3) "retrieve screenshot images in headless mode": I forgot to
use "-Dprism.order=sw". Screenshots work in headless mode.
On Sat, Nov 15, 2014 at 1:48 AM, Benjamin Gudehus <hastebrot at gmail.com>
> You can find the PR for headless support in TestFX here:
> There are some issues with the Glass robot. We need this robot in order to
> simulate user interactions in headless mode.
> One problem is, that the Glass robot *(1) requires an JavaFX application*
> to be set up. TestFX initializes the robots first and then launches the
> Application. I worked-around this problem, by initializing the Glass robot
> just before the first user interaction is made.
> Another problem is, that the Glass robot *(2) requires interactions to be
> run within the JavaFX thread*. From the integration tests I've wrote it
> looks that we need to wait for the events in the JavaFX thread to complete
> for certain interactions, e.g. we need to wait after mouseMove() in order
> to do mouseClick(). With the AWT robot we only needed to wait for the
> events triggered by interactions to complete (let's call them
> post-interaction events). Now it seems that we also need to wait for the
> interactions itself to complete, which then will also trigger the
> post-interaction events. I'll need to visualize different interaction
> events, post-interaction events and the event waiting, and decide when we
> need to use the semaphore solution we currently use to wait for
> post-interaction events. Also I thought that events with
> Platform.runLater() will be processed first-in-first-out, but it seems that
> this is not the case.
> Yet, another problem is, that I did not manage to *(3) retrieve
> screenshot images in headless mode* with the Glass robot. Although it
> works in normal mode. Maybe the JavaFX event robot can retrieve the
> screenshots. Interestingly the HeadlessScreen updates it's framebuffer (
> On Fri, Nov 14, 2014 at 8:04 PM, Benjamin Gudehus <hastebrot at gmail.com>
>> >Should we roll out a openjfx-monocle-1.8.0_40-SNAPSHOT?
>> I'll prepare a branch for this.
>> Applied your patch and made some changes (introduced gradle.properties
>> and removed redundant if-condition):
More information about the openjfx-dev