Flutter Linux Embedder
fl_accessibility_plugin.cc File Reference

Go to the source code of this file.

Classes

struct  _FlAccessibilityPlugin
 

Functions

static void fl_accessibility_plugin_dispose (GObject *object)
 
static void fl_accessibility_plugin_class_init (FlAccessibilityPluginClass *klass)
 
static void fl_accessibility_plugin_init (FlAccessibilityPlugin *self)
 
FlAccessibilityPlugin * fl_accessibility_plugin_new (FlView *view)
 
void fl_accessibility_plugin_handle_update_semantics_node (FlAccessibilityPlugin *self, const FlutterSemanticsNode *node)
 

Function Documentation

◆ fl_accessibility_plugin_class_init()

static void fl_accessibility_plugin_class_init ( FlAccessibilityPluginClass *  klass)
static

Definition at line 28 of file fl_accessibility_plugin.cc.

29  {
30  G_OBJECT_CLASS(klass)->dispose = fl_accessibility_plugin_dispose;
31 }

References fl_accessibility_plugin_dispose().

◆ fl_accessibility_plugin_dispose()

static void fl_accessibility_plugin_dispose ( GObject *  object)
static

Definition at line 16 of file fl_accessibility_plugin.cc.

16  {
17  FlAccessibilityPlugin* self = FL_ACCESSIBILITY_PLUGIN(object);
18 
19  if (self->view != nullptr) {
20  g_object_remove_weak_pointer(G_OBJECT(self),
21  reinterpret_cast<gpointer*>(&(self->view)));
22  self->view = nullptr;
23  }
24 
25  G_OBJECT_CLASS(fl_accessibility_plugin_parent_class)->dispose(object);
26 }

References self.

Referenced by fl_accessibility_plugin_class_init().

◆ fl_accessibility_plugin_handle_update_semantics_node()

void fl_accessibility_plugin_handle_update_semantics_node ( FlAccessibilityPlugin *  plugin,
const FlutterSemanticsNode *  node 
)

fl_accessibility_plugin_handle_update_semantics_node: @plugin: an #FlAccessibilityPlugin. @node: semantic node information.

Handle a semantics node update.

Definition at line 46 of file fl_accessibility_plugin.cc.

48  {
49  if (self->view == nullptr) {
50  return;
51  }
52 
53  AtkObject* accessible = gtk_widget_get_accessible(GTK_WIDGET(self->view));
55  FL_VIEW_ACCESSIBLE(accessible), node);
56 }

References fl_view_accessible_handle_update_semantics_node(), node, and self.

Referenced by update_semantics_node_cb().

◆ fl_accessibility_plugin_init()

static void fl_accessibility_plugin_init ( FlAccessibilityPlugin *  self)
static

Definition at line 33 of file fl_accessibility_plugin.cc.

33 {}

◆ fl_accessibility_plugin_new()

FlAccessibilityPlugin* fl_accessibility_plugin_new ( FlView *  view)

FlAccessibilityPlugin:

#FlAccessibilityPlugin is a plugin that handles semantic node updates and converts them to ATK events. fl_accessibility_plugin_new: @view: an #FlView to export accessibility information to.

Creates a new plugin handles semantic node updates.

Returns: a new #FlAccessibilityPlugin.

Definition at line 35 of file fl_accessibility_plugin.cc.

35  {
36  FlAccessibilityPlugin* self = FL_ACCESSIBILITY_PLUGIN(
37  g_object_new(fl_accessibility_plugin_get_type(), nullptr));
38 
39  self->view = view;
40  g_object_add_weak_pointer(G_OBJECT(self),
41  reinterpret_cast<gpointer*>(&(self->view)));
42 
43  return self;
44 }

References g_object_add_weak_pointer(), and self.

Referenced by fl_view_constructed().

fl_view_accessible_handle_update_semantics_node
void fl_view_accessible_handle_update_semantics_node(FlViewAccessible *self, const FlutterSemanticsNode *node)
Definition: fl_view_accessible.cc:192
fl_accessibility_plugin_dispose
static void fl_accessibility_plugin_dispose(GObject *object)
Definition: fl_accessibility_plugin.cc:16
g_object_add_weak_pointer
g_object_add_weak_pointer(G_OBJECT(self), reinterpret_cast< gpointer * >(&self->engine))
self
GdkEvent FlView * self
Definition: fl_view.cc:100
node
G_BEGIN_DECLS const FlutterSemanticsNode * node
Definition: fl_view_accessible.h:40