| Summary: | FXMouseDragGesture can get into an invalid state. | ||
|---|---|---|---|
| Product: | [Tools] GEF | Reporter: | Matthias Wienand <matthias.wienand> |
| Component: | GEF FX | Assignee: | Matthias Wienand <matthias.wienand> |
| Status: | RESOLVED FIXED | QA Contact: | |
| Severity: | normal | ||
| Priority: | P3 | ||
| Version: | unspecified | ||
| Target Milestone: | --- | ||
| Hardware: | PC | ||
| OS: | Linux | ||
| Whiteboard: | |||
|
Description
Matthias Wienand
The gesture can no longer get into an invalid state. It is guaranteed now that at least press() and release() are called for a press-drag-release gesture. After an initial mouse press, all mouse events are processed by the gesture using an event filter. The code is published on the master branch of the GEF4 git repository, therefore I am changing the status to RESOLVED FIXED. However, there are still remaining problems with the FXMouseDragGesture in conjunction with the JavaFX SWT integration. In particular, mouse events might not get processed by JavaFX when the mouse is outside of the JavaFX Scene. In order to guarantee a release() call before the next press-drag-release gesture can start, the gesture does now check if at least one mouse button is pressed in the event filter. If no mouse buttons are pressed, the gesture deduces that a release event must have occured which did not get send to the event filter and calls release(). I reported those problems in the JavaFX issue tracker: https://javafx-jira.kenai.com/browse/RT-37869 |