public unsafe int OnKeyEvent(cef_browser_t *browser, [Immutable] cef_key_event_t * @event, CefEventHandle os_event) { fixed(cef_keyboard_handler_t *self = &this) { return(((delegate * unmanaged[Stdcall] < cef_keyboard_handler_t *, cef_browser_t *, cef_key_event_t *, CefEventHandle, int >)on_key_event)(self, browser, @event, os_event)); } }
internal unsafe void ToNative(cef_key_event_t *ptr) { if (ptr == null) { throw new ArgumentNullException("ptr"); } ptr->type = EventType; ptr->modifiers = Modifiers; ptr->windows_key_code = WindowsKeyCode; ptr->native_key_code = NativeKeyCode; ptr->is_system_key = IsSystemKey ? 1 : 0; ptr->character = Character; ptr->unmodified_character = UnmodifiedCharacter; ptr->focus_on_editable_field = FocusOnEditableField ? 1 : 0; }
public static void send_key_event(cef_browser_host_t *self, cef_key_event_t * @event) { send_key_event_delegate d; var p = self->_send_key_event; if (p == _p1b) { d = _d1b; } else { d = (send_key_event_delegate)Marshal.GetDelegateForFunctionPointer(p, typeof(send_key_event_delegate)); if (_p1b == IntPtr.Zero) { _d1b = d; _p1b = p; } } d(self, @event); }
internal static unsafe CefKeyEvent FromNative(cef_key_event_t *ptr) { if (ptr == null) { throw new ArgumentNullException("ptr"); } return(new CefKeyEvent { EventType = ptr->type, Modifiers = ptr->modifiers, WindowsKeyCode = ptr->windows_key_code, NativeKeyCode = ptr->native_key_code, IsSystemKey = ptr->is_system_key != 0, Character = (char)ptr->character, UnmodifiedCharacter = (char)ptr->unmodified_character, FocusOnEditableField = ptr->focus_on_editable_field != 0, }); }
private int on_key_event(cef_keyboard_handler_t *self, cef_browser_t *browser, cef_key_event_t * @event, IntPtr os_event) { CheckSelf(self); var m_browser = CefBrowser.FromNative(browser); var m_event = CefKeyEvent.FromNative(@event); // TODO: wrap cef_event_handle_t (os_event) IntPtr m_os_event = IntPtr.Zero; if (os_event != IntPtr.Zero) { } var result = OnKeyEvent(m_browser, m_event, m_os_event); return(result ? 1 : 0); }
public unsafe extern void SendKeyEvent([Immutable] cef_key_event_t * @event);
/// <summary> /// Send a key event to the browser. /// </summary> public void SendKeyEvent(cef_key_event_t * @event) { throw new NotImplementedException(); // TODO: CefBrowserHost.SendKeyEvent }
public unsafe extern int OnKeyEvent(cef_browser_t *browser, [Immutable] cef_key_event_t * @event, CefEventHandle os_event);
public unsafe extern int OnPreKeyEvent(cef_browser_t *browser, [Immutable] cef_key_event_t * @event, CefEventHandle os_event, int *is_keyboard_shortcut);
/// <summary> /// Called before a keyboard event is sent to the renderer. |event| contains /// information about the keyboard event. |os_event| is the operating system /// event message, if any. Return true if the event was handled or false /// otherwise. If the event will be handled in OnKeyEvent() as a keyboard /// shortcut set |is_keyboard_shortcut| to true and return false. /// </summary> // protected abstract int OnPreKeyEvent(cef_browser_t* browser, cef_key_event_t* @event, IntPtr os_event, int* is_keyboard_shortcut); private int on_key_event(cef_keyboard_handler_t *self, cef_browser_t *browser, cef_key_event_t * @event, IntPtr os_event) { CheckSelf(self); throw new NotImplementedException(); // TODO: CefKeyboardHandler.OnKeyEvent }