> Issue is when `JFXPanel `is used to embed some JavaFX components and when we > drag something from swing or an external application and try to drop on a > JavaFX component inside the JFXPanel, it doesn't accept the drop showing > "block" sign suggesting DnD is blocked. > > The problem is in both drag and drop side of operations where `acceptDrag > `and `acceptDrop `on `DropTargetDragEvent `is not called because `DragEvent > constructor` called from `Scene ` > [which is called from `SwingDnD `via > `EmbeddedSceneDTInterface.handleDragEnter` and `handleDragDrop] > ` > is not storing `state.acceptedTransferMode` when eventType is not > `DragEvent.DRAG_DROPPED` or `DragEvent.DRAG_DONE` but Scene creates DragEvent > with only `DragEvent.ANY` > so `handleDragEnter `and `handleDragDrop `returns null as > `DragEvent.getAcceptedTransferMode` returns null > > Fix is made so that instead of relying on return value of > handleDragEnter/handleDragDrop which seems to be always null for reason > mentioned above, we rely on `isDataFlavorSupported `check for the drag and > drop as is being done in JDK side of DnD scheme. > Also, to have a proper drop of the data, we get the focus owner from the > JFXPanel scene and insert the text in the location pointed to by the mouse > cursor. > > Regression test is already present in > tests/manual/swing/DragDropOntoJavaFXControlInJFXPanelTest.java
Prasanta Sadhukhan has updated the pull request incrementally with two additional commits since the last revision: - Revert module-info change - Update test with setOnDragOver and setOnDragDropped ------------- Changes: - all: https://git.openjdk.org/jfx/pull/1843/files - new: https://git.openjdk.org/jfx/pull/1843/files/0f1c0491..fb145e9b Webrevs: - full: https://webrevs.openjdk.org/?repo=jfx&pr=1843&range=02 - incr: https://webrevs.openjdk.org/?repo=jfx&pr=1843&range=01-02 Stats: 75 lines in 4 files changed: 28 ins; 38 del; 9 mod Patch: https://git.openjdk.org/jfx/pull/1843.diff Fetch: git fetch https://git.openjdk.org/jfx.git pull/1843/head:pull/1843 PR: https://git.openjdk.org/jfx/pull/1843