On Wed, 18 Jan 2023 00:34:48 GMT, Thiago Milczarek Sayao <tsa...@openjdk.org> 
wrote:

>> This PR fixes 8273379.
>> 
>> I reverted back to use GDK (from 
>> [8225571](https://bugs.openjdk.org/browse/JDK-8225571)) to handle the 
>> events. 
>> 
>> It may also fix [8280383](https://bugs.openjdk.org/browse/JDK-8280383).
>> 
>> There's also some cleaup.
>> 
>> To do general testing (two tests were added):
>> `java @build/run.args -jar apps/toys/DragDrop/dist/DragDrop.jar`
>> 
>> Information for reviewing:
>> * Previously an offscreen window where used to pass events. Now it gets the 
>> window were Drag initially started  
>> (`WindowContextBase::sm_mouse_drag_window`);
>> * There's a new `DragSourceContext` instead of global variables;
>> * DragView were simplified;
>> * It handles `GDK_GRAB_BROKEN` events (I still need to figure it out a test 
>> case for this - It should happen when another window grabs the device during 
>> the drag);
>> * There's a special case for `GDK_BUTTON_RELEASE` because `WindowContext` 
>> will notify java about the button release and set `DnDGesture` to null 
>> before the end of the DND.
>> * `gdk_drag_find_window_for_screen` -> pass the DragView window to be 
>> ignored (as it would "steal" destination motion events);
>> * The Scenario were the drag source window closes during the drag is now 
>> covered;
>
> Thiago Milczarek Sayao has updated the pull request with a new target base 
> due to a merge or a rebase. The incremental webrev excludes the unrelated 
> changes brought in by the merge/rebase. The pull request contains 59 
> additional commits since the last revision:
> 
>  - Merge branch 'master' into 8273379-dnd-keys
>  - Merge branch 'openjdk:master' into master
>  - Fix DragView below cursor
>  - Minor adjustments
>  - Typo
>  - Remove commented out code
>  - Rework 2
>  - Fix drag leave
>  - Fix cursor + improve drag move
>  - Fix icon size on dragview
>  - ... and 49 more: https://git.openjdk.org/jfx/compare/b0652d11...c7d88050

I'll do more testing, but so far it's working as expected on many scenarios:
` java @build/run.args -jar apps/toys/DragDrop/dist/DragDrop.jar`

I have merged the latest changes from master.

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

PR: https://git.openjdk.org/jfx/pull/986

Reply via email to