RFR: 8292922 - [Linux] No more drag events when new Stage is created in drag handler [v6]

Kevin Rushforth kcr at openjdk.org
Fri Dec 23 13:05:59 UTC 2022


On Wed, 21 Dec 2022 12:56:12 GMT, Thiago Milczarek Sayao <tsayao at openjdk.org> wrote:

>> This PR  was previously discussed on #905.
>> 
>> The approach is to grab the keyboard focus so the window that originated the drag will keep it.
>> 
>> I did some cleanup on grabbing related functions as well.
>> 
>> `gdk_keyboard_focus()` is deprecated, so is `gdk_device*` functions in favor of `gdk_seat*`. But that's only available in later Gtk versions. I checked and newer Gtk will use `gdk_seat*` inside the deprecated `gdk_keyboard_focus()`.
>> 
>> Edit:
>> 
>> The current changes uses another approach that is to not ungrab pointer device when focus is received on another window. There's also some cleanup on grabbing related functions and grab moved from starting on mouse click to the actual drag.
>
> Thiago Milczarek Sayao has updated the pull request incrementally with one additional commit since the last revision:
> 
>   Grab drag focus on drag

All my testing looks good, too. Since there is no merge conflict between this and PR #915, I'll leave it up to you if you want to integrate this one first or wait for the other.

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

Marked as reviewed by kcr (Lead).

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


More information about the openjfx-dev mailing list