diff --git a/src/Avalonia.Controls.WebView.Core/Gtk/GtkOffscreenWebViewAdapter.cs b/src/Avalonia.Controls.WebView.Core/Gtk/GtkOffscreenWebViewAdapter.cs index 9e79a94..c881ae7 100644 --- a/src/Avalonia.Controls.WebView.Core/Gtk/GtkOffscreenWebViewAdapter.cs +++ b/src/Avalonia.Controls.WebView.Core/Gtk/GtkOffscreenWebViewAdapter.cs @@ -246,8 +246,13 @@ public bool PointerLeaveInput(PointerPoint point, double dpi, KeyModifiers modif { return RunOnGlibThread(() => { + var gdisplay = gdk_display_get_default(); + var seat = gdk_display_get_default_seat(gdisplay); + var gdevice = gdk_seat_get_pointer(seat); + using var state = new EventSendState(GdkEventType.GDK_LEAVE_NOTIFY, WebViewHandle); var ev = state.Event; + gdk_event_set_device(new IntPtr(ev), gdevice); ev->crossing.x = point.Position.X * dpi; ev->crossing.y = point.Position.Y * dpi; ev->crossing.time = 0;