RFR: 8325591: [Mac] DRAG_DONE reports null transferMode when destination is external [v3]

Kevin Rushforth kcr at openjdk.org
Tue Apr 30 18:36:02 UTC 2024


On Tue, 30 Apr 2024 17:42:22 GMT, Martin Fox <mfox at openjdk.org> wrote:

>> 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.
>
> Martin Fox has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Fixed whitespace errors

Looks good. Thanks for the new manual test program. I left one minor formatting comment on the test, but I'll approve it anyway (and reapprove if you update it).

tests/manual/dnd/DndBasic.java line 169:

> 167: 
> 168:     private Group createTarget(TransferMode[] modes)
> 169:     {

Minor: move brace to previous line

-------------

Marked as reviewed by kcr (Lead).

PR Review: https://git.openjdk.org/jfx/pull/1371#pullrequestreview-2032195751
PR Review Comment: https://git.openjdk.org/jfx/pull/1371#discussion_r1585313426


More information about the openjfx-dev mailing list