RFR: 8325591: [Mac] DRAG_DONE reports null transferMode when destination is external
Martin Fox
mfox at openjdk.org
Fri Feb 16 22:40:10 UTC 2024
At the end of a drag operation the Mac Glass code sends out a DRAG_DONE event using the operation mask tracked in the GlassDragSource to determine the final transfer mode. That mask is only updated when a window in the JavaFX app is the drop destination. If the drag moves to an external destination the mask is set to NONE. If the drag terminates in the external destination that NONE forms the basis of the transfer mode sent via the DRAG_DONE event.
At the very end of the drag the OS calls the NSDraggingSource (GlassDraggingSource) with the final drag operation. This PR issues the DRAG_DONE from that callback so it can get the final transfer mode correct for both internal and external destinations.
-------------
Commit messages:
- Using OS to determine DRAG_DONE operation
Changes: https://git.openjdk.org/jfx/pull/1371/files
Webrev: https://webrevs.openjdk.org/?repo=jfx&pr=1371&range=00
Issue: https://bugs.openjdk.org/browse/JDK-8325591
Stats: 29 lines in 5 files changed: 20 ins; 1 del; 8 mod
Patch: https://git.openjdk.org/jfx/pull/1371.diff
Fetch: git fetch https://git.openjdk.org/jfx.git pull/1371/head:pull/1371
PR: https://git.openjdk.org/jfx/pull/1371
More information about the openjfx-dev
mailing list