39 G_DEFINE_TYPE(FlKeyboardPendingEvent, fl_keyboard_pending_event, G_TYPE_OBJECT)
42 FlKeyboardPendingEvent*
self = FL_KEYBOARD_PENDING_EVENT(
object);
44 g_clear_object(&self->event);
46 G_OBJECT_CLASS(fl_keyboard_pending_event_parent_class)->dispose(
object);
50 FlKeyboardPendingEventClass* klass) {
59 FlKeyboardPendingEvent*
self = FL_KEYBOARD_PENDING_EVENT(
60 g_object_new(fl_keyboard_pending_event_get_type(),
nullptr));
62 self->event = FL_KEY_EVENT(g_object_ref(event));
69 g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(
self),
nullptr);
74 g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(
self), 0);
79 FlKeyboardPendingEvent*
self,
81 g_return_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(
self));
82 self->embedder_replied =
true;
83 self->embedder_handled = handled;
87 FlKeyboardPendingEvent*
self,
89 g_return_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(
self));
90 self->channel_replied =
true;
91 self->channel_handled = handled;
95 FlKeyboardPendingEvent*
self) {
96 g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(
self), FALSE);
97 return self->embedder_handled ||
self->channel_handled;
101 g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(
self), FALSE);
102 return self->embedder_replied &&
self->channel_replied;