RFR: 8303038: Glass gtk3 sends scroll events with delta(x, y) = 0 [v8]

Thiago Milczarek Sayao tsayao at openjdk.org
Sat May 27 13:51:01 UTC 2023


On Sat, 6 May 2023 21:22:28 GMT, Thiago Milczarek Sayao <tsayao at openjdk.org> wrote:

>> Simple fix to get the scroll deltas from GDK_SCROLL_SMOOTH. If we ignore this scroll event type, deltas are sent to java with the value equal to zero.
>> 
>> Here's whats happening:
>> 
>> We include all event masks, so when using gtk3 (>= 3.4.0) it includes `GDK_SMOOTH_SCROLL_MASK` meaning we receive duplicated events, one with  `direction = GDK_SMOOTH_SCROLL_MASK` and other with "legacy" direction (UP/DOWN).
>> 
>> When receiving the event corresponding to `GDK_SMOOTH_SCROLL_MASK` we ignored it causing it to send deltas (x,y) = 0.
>> 
>> The fix now checks if `GDK_SMOOTH_SCROLL_MASK` is supported and uses it, also adding smooth scroll functionality.
>
> 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 40 additional commits since the last revision:
> 
>  - Merge branch 'master' into fix_scrolling
>  - Remove print statement
>  - Merge branch 'master' into fix_scrolling
>  - Improve direction
>  - Rename var
>  - Fix direction
>  - Fix for Ubuntu 20.04
>  - Fix scroll event
>  - Merge branch 'openjdk:master' into master
>  - Merge branch 'openjdk:master' into master
>  - ... and 30 more: https://git.openjdk.org/jfx/compare/847cc853...dad897aa

Since now we have only gtk3 I will look if we could just use the `GDK_SMOOTH_SCROLL_MASK` and ignore `GDK_SCROLL_MASK`

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

PR Comment: https://git.openjdk.org/jfx/pull/1044#issuecomment-1565426477


More information about the openjfx-dev mailing list