On Mon, 18 Dec 2023 10:09:29 GMT, Thiago Milczarek Sayao <tsa...@openjdk.org> wrote:
>> I take `GdkSeat` is available since GTK 3.0? >> https://docs.gtk.org/gdk3/class.Seat.html >> >> But don't we have a minimum set on 3.8.0? >> >> Would this work? >> >> #if GTK_CHECK_VERSION(3, 0, 0) >> static GdkSeat * (*_gdk_display_get_default_seat) (GdkDisplay *display); >> GdkSeat * wrapped_gdk_display_get_default_seat (GdkDisplay *display) >> {...} >> #endif >> >> ... >> >> #if GTK_CHECK_VERSION(3, 0, 0) >> GdkSeat* seat = >> wrapped_gdk_display_get_default_seat(gdk_window_get_display(window)); >> if (seat != NULL && _gdk_seat_grab != NULL) { >> *status = ... >> return TRUE; >> } >> #endif > > I think the docs are wrong, I probably exists since 3.20, so maybe check for > `GTK_CHECK_VERSION(3, 20, 0);`. > > > This is the compilation error on Ubuntu 16.04: > `/home/tsayao/jose/jfx/modules/javafx.graphics/src/main/native-glass/gtk/wrapped.c:200:34: > error: unknown type name ‘GdkSeat’ > ` Okay, that is unfortunate (GTK docs inaccurate), but makes sense. I'll add the compile-time checks to `wrapped.c`. ------------- PR Review Comment: https://git.openjdk.org/jfx/pull/1305#discussion_r1429864963