public WaylandPointerButtonEventArgs(Pointer pointer, SeatInstance seat, uint serial, WaylandMouseButton mouseButton, bool isButtonDown, double x, double y) { Pointer = pointer; Seat = seat; Serial = serial; MouseButton = mouseButton; IsButtonDown = isButtonDown; X = x; Y = y; }
private void OnButtonListener(IntPtr data, IntPtr pointerHandle, uint serial, uint time, WaylandMouseButton button, uint state) { if (_currentSurface == IntPtr.Zero) { return; } Control window = GetControlForSurface(_currentSurface); SeatInstance seat = App.CurrentApplication.Registry.Seat.Seats.First(s => s.Pointer == this); window.TriggerWaylandPointerButton(new WaylandPointerButtonEventArgs(this, seat, serial, button, state == 1, _currentSurfaceX, _currentSurfaceY)); }