Flutter Linux Embedder
fl_keyboard_pending_event.cc File Reference

Go to the source code of this file.

Classes

struct  _FlKeyboardPendingEvent
 

Functions

static void fl_keyboard_pending_event_dispose (GObject *object)
 
static void fl_keyboard_pending_event_class_init (FlKeyboardPendingEventClass *klass)
 
static void fl_keyboard_pending_event_init (FlKeyboardPendingEvent *self)
 
FlKeyboardPendingEvent * fl_keyboard_pending_event_new (FlKeyEvent *event, uint64_t sequence_id, size_t to_reply)
 
FlKeyEvent * fl_keyboard_pending_event_get_event (FlKeyboardPendingEvent *self)
 
uint64_t fl_keyboard_pending_event_get_sequence_id (FlKeyboardPendingEvent *self)
 
uint64_t fl_keyboard_pending_event_get_hash (FlKeyboardPendingEvent *self)
 
void fl_keyboard_pending_event_mark_replied (FlKeyboardPendingEvent *self, gboolean handled)
 
gboolean fl_keyboard_pending_event_get_any_handled (FlKeyboardPendingEvent *self)
 
gboolean fl_keyboard_pending_event_is_complete (FlKeyboardPendingEvent *self)
 

Function Documentation

◆ fl_keyboard_pending_event_class_init()

static void fl_keyboard_pending_event_class_init ( FlKeyboardPendingEventClass *  klass)
static

Definition at line 46 of file fl_keyboard_pending_event.cc.

47  {
48  G_OBJECT_CLASS(klass)->dispose = fl_keyboard_pending_event_dispose;
49 }

References fl_keyboard_pending_event_dispose().

◆ fl_keyboard_pending_event_dispose()

static void fl_keyboard_pending_event_dispose ( GObject *  object)
static

Definition at line 38 of file fl_keyboard_pending_event.cc.

38  {
39  FlKeyboardPendingEvent* self = FL_KEYBOARD_PENDING_EVENT(object);
40 
41  g_clear_object(&self->event);
42 
43  G_OBJECT_CLASS(fl_keyboard_pending_event_parent_class)->dispose(object);
44 }

Referenced by fl_keyboard_pending_event_class_init().

◆ fl_keyboard_pending_event_get_any_handled()

gboolean fl_keyboard_pending_event_get_any_handled ( FlKeyboardPendingEvent *  self)

Definition at line 96 of file fl_keyboard_pending_event.cc.

97  {
98  g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(self), FALSE);
99  return self->any_handled;
100 }

Referenced by responder_handle_event_callback().

◆ fl_keyboard_pending_event_get_event()

FlKeyEvent* fl_keyboard_pending_event_get_event ( FlKeyboardPendingEvent *  self)

Definition at line 70 of file fl_keyboard_pending_event.cc.

70  {
71  g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(self), nullptr);
72  return self->event;
73 }

Referenced by responder_handle_event_callback().

◆ fl_keyboard_pending_event_get_hash()

uint64_t fl_keyboard_pending_event_get_hash ( FlKeyboardPendingEvent *  self)

Definition at line 81 of file fl_keyboard_pending_event.cc.

81  {
82  g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(self), 0);
83  return self->hash;
84 }

Referenced by compare_pending_by_hash().

◆ fl_keyboard_pending_event_get_sequence_id()

uint64_t fl_keyboard_pending_event_get_sequence_id ( FlKeyboardPendingEvent *  self)

Definition at line 75 of file fl_keyboard_pending_event.cc.

76  {
77  g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(self), 0);
78  return self->sequence_id;
79 }

Referenced by compare_pending_by_sequence_id(), and fl_keyboard_handler_handle_event().

◆ fl_keyboard_pending_event_init()

static void fl_keyboard_pending_event_init ( FlKeyboardPendingEvent *  self)
static

Definition at line 51 of file fl_keyboard_pending_event.cc.

51 {}

◆ fl_keyboard_pending_event_is_complete()

gboolean fl_keyboard_pending_event_is_complete ( FlKeyboardPendingEvent *  self)

Definition at line 102 of file fl_keyboard_pending_event.cc.

102  {
103  g_return_val_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(self), FALSE);
104  return self->unreplied == 0;
105 }

Referenced by responder_handle_event_callback().

◆ fl_keyboard_pending_event_mark_replied()

void fl_keyboard_pending_event_mark_replied ( FlKeyboardPendingEvent *  self,
gboolean  handled 
)

Definition at line 86 of file fl_keyboard_pending_event.cc.

87  {
88  g_return_if_fail(FL_IS_KEYBOARD_PENDING_EVENT(self));
89  g_return_if_fail(self->unreplied > 0);
90  self->unreplied -= 1;
91  if (handled) {
92  self->any_handled = TRUE;
93  }
94 }

References TRUE.

Referenced by responder_handle_event_callback().

◆ fl_keyboard_pending_event_new()

FlKeyboardPendingEvent* fl_keyboard_pending_event_new ( FlKeyEvent *  event,
uint64_t  sequence_id,
size_t  to_reply 
)

Definition at line 55 of file fl_keyboard_pending_event.cc.

57  {
58  FlKeyboardPendingEvent* self = FL_KEYBOARD_PENDING_EVENT(
59  g_object_new(fl_keyboard_pending_event_get_type(), nullptr));
60 
61  self->event = FL_KEY_EVENT(g_object_ref(event));
62  self->sequence_id = sequence_id;
63  self->unreplied = to_reply;
64  self->any_handled = false;
65  self->hash = fl_key_event_hash(self->event);
66 
67  return self;
68 }

References event, and fl_key_event_hash().

Referenced by fl_keyboard_handler_handle_event().

event
FlKeyEvent * event
Definition: fl_key_channel_responder.cc:118
TRUE
return TRUE
Definition: fl_pixel_buffer_texture_test.cc:53
fl_key_event_hash
uint64_t fl_key_event_hash(FlKeyEvent *self)
Definition: fl_key_event.cc:114
fl_keyboard_pending_event_dispose
static void fl_keyboard_pending_event_dispose(GObject *object)
Definition: fl_keyboard_pending_event.cc:38