public Keyboard(IntPtr handle) : base(handle) { // Store a handle to delegates for native use so that we do not lose a reference to them _keymapListener = OnKeymapListener; _enterListener = OnEnterListener; _leaveListener = OnLeaveListener; _keyListener = OnKeyListener; _modifiersListener = OnModifiersListener; _repeatInfoListener = OnRepeatInfoListener; // Tie up to our events Wayland-side KeyboardAddListener(handle, _keymapListener, _enterListener, _leaveListener, _keyListener, _modifiersListener, _repeatInfoListener); }
private static extern void KeyboardAddListener(IntPtr pointer, KeyboardOnKeymapListener keymapListener, KeyboardOnEnterListener enterListener, KeyboardOnLeaveListener leaveListener, KeyboardOnKeyListener keyListener, KeyboardOnModifiersListener modifiersListener, KeyboardOnRepeatInfoListener repeatInfoListener);