Flutter Linux Embedder
fl_engine_private.h
Go to the documentation of this file.
1 // Copyright 2013 The Flutter Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file.
4 
5 #ifndef FLUTTER_SHELL_PLATFORM_LINUX_FL_ENGINE_PRIVATE_H_
6 #define FLUTTER_SHELL_PLATFORM_LINUX_FL_ENGINE_PRIVATE_H_
7 
8 #include <glib-object.h>
9 
10 #include "flutter/shell/platform/embedder/embedder.h"
17 
18 G_BEGIN_DECLS
19 
20 /**
21  * FlEngineError:
22  * Errors for #FlEngine objects to set on failures.
23  */
24 
25 typedef enum {
28 
29 GQuark fl_engine_error_quark(void) G_GNUC_CONST;
30 
31 /**
32  * FlEnginePlatformMessageHandler:
33  * @engine: an #FlEngine.
34  * @channel: channel message received on.
35  * @message: message content received from Dart.
36  * @response_handle: a handle to respond to the message with.
37  * @user_data: (closure): data provided when registering this handler.
38  *
39  * Function called when platform messages are received.
40  *
41  * Returns: %TRUE if message has been accepted.
42  */
43 typedef gboolean (*FlEnginePlatformMessageHandler)(
44  FlEngine* engine,
45  const gchar* channel,
46  GBytes* message,
47  const FlutterPlatformMessageResponseHandle* response_handle,
48  gpointer user_data);
49 
50 /**
51  * FlEngineUpdateSemanticsHandler:
52  * @engine: an #FlEngine.
53  * @node: semantic node information.
54  * @user_data: (closure): data provided when registering this handler.
55  *
56  * Function called when semantics node updates are received.
57  */
59  FlEngine* engine,
60  const FlutterSemanticsUpdate2* update,
61  gpointer user_data);
62 
63 /**
64  * fl_engine_new_with_renderer:
65  * @project: an #FlDartProject.
66  * @renderer: an #FlRenderer.
67  *
68  * Creates new Flutter engine.
69  *
70  * Returns: a new #FlEngine.
71  */
72 FlEngine* fl_engine_new_with_renderer(FlDartProject* project,
73  FlRenderer* renderer);
74 
75 /**
76  * fl_engine_get_renderer:
77  * @engine: an #FlEngine.
78  *
79  * Gets the renderer used by this engine.
80  *
81  * Returns: an #FlRenderer.
82  */
83 FlRenderer* fl_engine_get_renderer(FlEngine* engine);
84 
85 /**
86  * fl_engine_get_display_monitor:
87  * @engine: an #FlEngine.
88  *
89  * Gets the display monitor used by this engine.
90  *
91  * Returns: an #FlDisplayMonitor.
92  */
93 FlDisplayMonitor* fl_engine_get_display_monitor(FlEngine* engine);
94 
95 /**
96  * fl_engine_start:
97  * @engine: an #FlEngine.
98  * @error: (allow-none): #GError location to store the error occurring, or %NULL
99  * to ignore.
100  *
101  * Starts the Flutter engine.
102  *
103  * Returns: %TRUE on success.
104  */
105 gboolean fl_engine_start(FlEngine* engine, GError** error);
106 
107 /**
108  * fl_engine_get_embedder_api:
109  * @engine: an #FlEngine.
110  *
111  * Gets the embedder API proc table, allowing modificiations for unit testing.
112  *
113  * Returns: a mutable pointer to the embedder API proc table.
114  */
115 FlutterEngineProcTable* fl_engine_get_embedder_api(FlEngine* engine);
116 
117 /**
118  * fl_engine_notify_display_update:
119  * @engine: an #FlEngine.
120  * @displays: displays present on the system.
121  * @displays_length: length of @displays.
122  *
123  * Notify the current displays that are in the system.
124  */
125 void fl_engine_notify_display_update(FlEngine* engine,
126  const FlutterEngineDisplay* displays,
127  size_t displays_length);
128 
129 /**
130  * fl_engine_add_view:
131  * @engine: an #FlEngine.
132  * @width: width of view in pixels.
133  * @height: height of view in pixels.
134  * @pixel_ratio: scale factor for view.
135  * @cancellable: (allow-none): a #GCancellable or %NULL.
136  * @callback: (scope async): a #GAsyncReadyCallback to call when the view is
137  * added.
138  * @user_data: (closure): user data to pass to @callback.
139  *
140  * Asynchronously add a new view. The returned view ID should not be used until
141  * this function completes.
142  *
143  * Returns: the ID for the view.
144  */
145 FlutterViewId fl_engine_add_view(FlEngine* engine,
146  size_t width,
147  size_t height,
148  double pixel_ratio,
149  GCancellable* cancellable,
150  GAsyncReadyCallback callback,
151  gpointer user_data);
152 
153 /**
154  * fl_engine_add_view_finish:
155  * @engine: an #FlEngine.
156  * @result: a #GAsyncResult.
157  * @error: (allow-none): #GError location to store the error occurring, or %NULL
158  * to ignore.
159  *
160  * Completes request started with fl_engine_add_view().
161  *
162  * Returns: %TRUE on success.
163  */
164 gboolean fl_engine_add_view_finish(FlEngine* engine,
165  GAsyncResult* result,
166  GError** error);
167 
168 /**
169  * fl_engine_remove_view:
170  * @engine: an #FlEngine.
171  * @view_id: ID to remove.
172  * @cancellable: (allow-none): a #GCancellable or %NULL.
173  * @callback: (scope async): a #GAsyncReadyCallback to call when the view is
174  * added.
175  * @user_data: (closure): user data to pass to @callback.
176  *
177  * Removes a view previously added with fl_engine_add_view().
178  */
179 void fl_engine_remove_view(FlEngine* engine,
180  FlutterViewId view_id,
181  GCancellable* cancellable,
182  GAsyncReadyCallback callback,
183  gpointer user_data);
184 
185 /**
186  * fl_engine_remove_view_finish:
187  * @engine: an #FlEngine.
188  * @result: a #GAsyncResult.
189  * @error: (allow-none): #GError location to store the error occurring, or %NULL
190  * to ignore.
191  *
192  * Completes request started with fl_engine_remove_view().
193  *
194  * Returns: %TRUE on succcess.
195  */
196 gboolean fl_engine_remove_view_finish(FlEngine* engine,
197  GAsyncResult* result,
198  GError** error);
199 
200 /**
201  * fl_engine_set_platform_message_handler:
202  * @engine: an #FlEngine.
203  * @handler: function to call when a platform message is received.
204  * @user_data: (closure): user data to pass to @handler.
205  * @destroy_notify: (allow-none): a function which gets called to free
206  * @user_data, or %NULL.
207  *
208  * Registers the function called when a platform message is received. Call
209  * fl_engine_send_platform_message_response() with the response to this message.
210  * Ownership of #FlutterPlatformMessageResponseHandle is
211  * transferred to the caller, and the message must be responded to avoid
212  * memory leaks.
213  */
215  FlEngine* engine,
217  gpointer user_data,
218  GDestroyNotify destroy_notify);
219 
220 /**
221  * fl_engine_set_update_semantics_handler:
222  * @engine: an #FlEngine.
223  * @handler: function to call when a semantics update is received.
224  * @user_data: (closure): user data to pass to @handler.
225  * @destroy_notify: (allow-none): a function which gets called to free
226  * @user_data, or %NULL.
227  *
228  * Registers the function called when a semantics update is received.
229  */
231  FlEngine* engine,
233  gpointer user_data,
234  GDestroyNotify destroy_notify);
235 
236 /**
237  * fl_engine_send_window_metrics_event:
238  * @engine: an #FlEngine.
239  * @display_id: the display this view is rendering on.
240  * @view_id: the view that the event occured on.
241  * @width: width of the window in pixels.
242  * @height: height of the window in pixels.
243  * @pixel_ratio: scale factor for window.
244  *
245  * Sends a window metrics event to the engine.
246  */
247 void fl_engine_send_window_metrics_event(FlEngine* engine,
248  FlutterEngineDisplayId display_id,
249  FlutterViewId view_id,
250  size_t width,
251  size_t height,
252  double pixel_ratio);
253 
254 /**
255  * fl_engine_send_mouse_pointer_event:
256  * @engine: an #FlEngine.
257  * @view_id: the view that the event occured on.
258  * @phase: mouse phase.
259  * @timestamp: time when event occurred in microseconds.
260  * @x: x location of mouse cursor.
261  * @y: y location of mouse cursor.
262  * @device_kind: kind of pointing device.
263  * @scroll_delta_x: x offset of scroll.
264  * @scroll_delta_y: y offset of scroll.
265  * @buttons: buttons that are pressed.
266  *
267  * Sends a mouse pointer event to the engine.
268  */
269 void fl_engine_send_mouse_pointer_event(FlEngine* engine,
270  FlutterViewId view_id,
271  FlutterPointerPhase phase,
272  size_t timestamp,
273  double x,
274  double y,
275  FlutterPointerDeviceKind device_kind,
276  double scroll_delta_x,
277  double scroll_delta_y,
278  int64_t buttons);
279 
280 /**
281  * fl_engine_send_touch_up_event:
282  * @engine: an #FlEngine.
283  * @view_id: the view that the event occured on.
284  * @timestamp: time when event occurred in microseconds.
285  * @x: x location of mouse cursor.
286  * @y: y location of mouse cursor.
287  * @device: device id.
288  *
289  * Sends a touch up event to the engine.
290  */
291 void fl_engine_send_touch_up_event(FlEngine* engine,
292  FlutterViewId view_id,
293  size_t timestamp,
294  double x,
295  double y,
296  int32_t device);
297 
298 /**
299  * fl_engine_send_touch_down_event:
300  * @engine: an #FlEngine.
301  * @view_id: the view that the event occured on.
302  * @timestamp: time when event occurred in microseconds.
303  * @x: x location of mouse cursor.
304  * @y: y location of mouse cursor.
305  * @device: device id.
306  *
307  * Sends a touch down event to the engine.
308  */
309 void fl_engine_send_touch_down_event(FlEngine* engine,
310  FlutterViewId view_id,
311  size_t timestamp,
312  double x,
313  double y,
314  int32_t device);
315 /**
316  * fl_engine_send_touch_move_event:
317  * @engine: an #FlEngine.
318  * @view_id: the view that the event occured on.
319  * @timestamp: time when event occurred in microseconds.
320  * @x: x location of mouse cursor.
321  * @y: y location of mouse cursor.
322  * @device: device id.
323  *
324  * Sends a touch move event to the engine.
325  */
326 void fl_engine_send_touch_move_event(FlEngine* engine,
327  FlutterViewId view_id,
328  size_t timestamp,
329  double x,
330  double y,
331  int32_t device);
332 
333 /**
334  * fl_engine_send_touch_add_event:
335  * @engine: an #FlEngine.
336  * @view_id: the view that the event occured on.
337  * @timestamp: time when event occurred in microseconds.
338  * @x: x location of mouse cursor.
339  * @y: y location of mouse cursor.
340  * @device: device id.
341  *
342  * Sends a touch add event to the engine.
343  */
344 void fl_engine_send_touch_add_event(FlEngine* engine,
345  FlutterViewId view_id,
346  size_t timestamp,
347  double x,
348  double y,
349  int32_t device);
350 
351 /**
352  * fl_engine_send_touch_remove_event:
353  * @engine: an #FlEngine.
354  * @view_id: the view that the event occured on.
355  * @timestamp: time when event occurred in microseconds.
356  * @x: x location of mouse cursor.
357  * @y: y location of mouse cursor.
358  * @device: device id.
359  *
360  * Sends a touch remove event to the engine.
361  */
362 void fl_engine_send_touch_remove_event(FlEngine* engine,
363  FlutterViewId view_id,
364  size_t timestamp,
365  double x,
366  double y,
367  int32_t device);
368 
369 /**
370  * fl_engine_send_pointer_pan_zoom_event:
371  * @engine: an #FlEngine.
372  * @view_id: the view that the event occured on.
373  * @timestamp: time when event occurred in microseconds.
374  * @x: x location of mouse cursor.
375  * @y: y location of mouse cursor.
376  * @phase: mouse phase.
377  * @pan_x: x offset of the pan/zoom in pixels.
378  * @pan_y: y offset of the pan/zoom in pixels.
379  * @scale: scale of the pan/zoom.
380  * @rotation: rotation of the pan/zoom in radians.
381  *
382  * Sends a pan/zoom pointer event to the engine.
383  */
384 void fl_engine_send_pointer_pan_zoom_event(FlEngine* engine,
385  FlutterViewId view_id,
386  size_t timestamp,
387  double x,
388  double y,
389  FlutterPointerPhase phase,
390  double pan_x,
391  double pan_y,
392  double scale,
393  double rotation);
394 
395 /**
396  * fl_engine_send_key_event:
397  * @engine: an #FlEngine.
398  * @event: key event to send.
399  * @cancellable: (allow-none): a #GCancellable or %NULL.
400  * @callback: (scope async): a #GAsyncReadyCallback to call when the request is
401  * satisfied.
402  * @user_data: (closure): user data to pass to @callback.
403  *
404  * Send a key event to the engine.
405  */
406 void fl_engine_send_key_event(FlEngine* engine,
407  const FlutterKeyEvent* event,
408  GCancellable* cancellable,
409  GAsyncReadyCallback callback,
410  gpointer user_data);
411 
412 /**
413  * fl_engine_send_key_event_finish:
414  * @engine: an #FlEngine.
415  * @result: a #GAsyncResult.
416  * @handled: location to write if this event was handled by the engine.
417  * @error: (allow-none): #GError location to store the error occurring, or %NULL
418  * to ignore.
419  *
420  * Completes request started with fl_engine_send_key_event().
421  *
422  * Returns: %TRUE on success.
423  */
424 gboolean fl_engine_send_key_event_finish(FlEngine* engine,
425  GAsyncResult* result,
426  gboolean* handled,
427  GError** error);
428 
429 /**
430  * fl_engine_dispatch_semantics_action:
431  * @engine: an #FlEngine.
432  * @id: the semantics action identifier.
433  * @action: the action being dispatched.
434  * @data: (allow-none): data associated with the action.
435  */
436 void fl_engine_dispatch_semantics_action(FlEngine* engine,
437  uint64_t id,
438  FlutterSemanticsAction action,
439  GBytes* data);
440 
441 /**
442  * fl_engine_send_platform_message_response:
443  * @engine: an #FlEngine.
444  * @handle: handle that was provided in #FlEnginePlatformMessageHandler.
445  * @response: (allow-none): response to send or %NULL for an empty response.
446  * @error: (allow-none): #GError location to store the error occurring, or %NULL
447  * to ignore.
448  *
449  * Responds to a platform message.
450  *
451  * Returns: %TRUE on success.
452  */
454  FlEngine* engine,
455  const FlutterPlatformMessageResponseHandle* handle,
456  GBytes* response,
457  GError** error);
458 
459 /**
460  * fl_engine_send_platform_message:
461  * @engine: an #FlEngine.
462  * @channel: channel to send to.
463  * @message: (allow-none): message buffer to send or %NULL for an empty message
464  * @cancellable: (allow-none): a #GCancellable or %NULL.
465  * @callback: (scope async): a #GAsyncReadyCallback to call when the request is
466  * satisfied.
467  * @user_data: (closure): user data to pass to @callback.
468  *
469  * Asynchronously sends a platform message.
470  */
471 void fl_engine_send_platform_message(FlEngine* engine,
472  const gchar* channel,
473  GBytes* message,
474  GCancellable* cancellable,
475  GAsyncReadyCallback callback,
476  gpointer user_data);
477 
478 /**
479  * fl_engine_send_platform_message_finish:
480  * @engine: an #FlEngine.
481  * @result: a #GAsyncResult.
482  * @error: (allow-none): #GError location to store the error occurring, or %NULL
483  * to ignore.
484  *
485  * Completes request started with fl_engine_send_platform_message().
486  *
487  * Returns: message response on success or %NULL on error.
488  */
489 GBytes* fl_engine_send_platform_message_finish(FlEngine* engine,
490  GAsyncResult* result,
491  GError** error);
492 
493 /**
494  * fl_engine_get_task_runner:
495  * @engine: an #FlEngine.
496  * @result: a #FlTaskRunner.
497  *
498  * Returns: task runner responsible for scheduling Flutter tasks.
499  */
500 FlTaskRunner* fl_engine_get_task_runner(FlEngine* engine);
501 
502 /**
503  * fl_engine_execute_task:
504  * @engine: an #FlEngine.
505  * @task: a #FlutterTask to execute.
506  *
507  * Executes given Flutter task.
508  */
509 void fl_engine_execute_task(FlEngine* engine, FlutterTask* task);
510 
511 /**
512  * fl_engine_mark_texture_frame_available:
513  * @engine: an #FlEngine.
514  * @texture_id: the identifier of the texture whose frame has been updated.
515  *
516  * Tells the Flutter engine that a new texture frame is available for the given
517  * texture.
518  *
519  * Returns: %TRUE on success.
520  */
521 gboolean fl_engine_mark_texture_frame_available(FlEngine* engine,
522  int64_t texture_id);
523 
524 /**
525  * fl_engine_register_external_texture:
526  * @engine: an #FlEngine.
527  * @texture_id: the identifier of the texture that is available.
528  *
529  * Tells the Flutter engine that a new external texture is available.
530  *
531  * Returns: %TRUE on success.
532  */
533 gboolean fl_engine_register_external_texture(FlEngine* engine,
534  int64_t texture_id);
535 
536 /**
537  * fl_engine_unregister_external_texture:
538  * @engine: an #FlEngine.
539  * @texture_id: the identifier of the texture that is not available anymore.
540  *
541  * Tells the Flutter engine that an existing external texture is not available
542  * anymore.
543  *
544  * Returns: %TRUE on success.
545  */
546 gboolean fl_engine_unregister_external_texture(FlEngine* engine,
547  int64_t texture_id);
548 
549 /**
550  * fl_engine_update_accessibility_features:
551  * @engine: an #FlEngine.
552  * @flags: the features to enable in the accessibility tree.
553  *
554  * Tells the Flutter engine to update the flags on the accessibility tree.
555  */
556 void fl_engine_update_accessibility_features(FlEngine* engine, int32_t flags);
557 
558 /**
559  * fl_engine_request_app_exit:
560  * @engine: an #FlEngine.
561  *
562  * Request the application exits.
563  */
564 void fl_engine_request_app_exit(FlEngine* engine);
565 
566 /**
567  * fl_engine_get_mouse_cursor_handler:
568  * @engine: an #FlEngine.
569  *
570  * Gets the mouse cursor handler used by this engine.
571  *
572  * Returns: a #FlMouseCursorHandler.
573  */
574 FlMouseCursorHandler* fl_engine_get_mouse_cursor_handler(FlEngine* engine);
575 
576 G_END_DECLS
577 
578 #endif // FLUTTER_SHELL_PLATFORM_LINUX_FL_ENGINE_PRIVATE_H_
fl_engine_send_platform_message_finish
GBytes * fl_engine_send_platform_message_finish(FlEngine *engine, GAsyncResult *result, GError **error)
Definition: fl_engine.cc:887
FlEnginePlatformMessageHandler
gboolean(* FlEnginePlatformMessageHandler)(FlEngine *engine, const gchar *channel, GBytes *message, const FlutterPlatformMessageResponseHandle *response_handle, gpointer user_data)
Definition: fl_engine_private.h:43
fl_engine_send_platform_message
void fl_engine_send_platform_message(FlEngine *engine, const gchar *channel, GBytes *message, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data)
Definition: fl_engine.cc:828
FL_ENGINE_ERROR_FAILED
@ FL_ENGINE_ERROR_FAILED
Definition: fl_engine_private.h:26
fl_engine_mark_texture_frame_available
gboolean fl_engine_mark_texture_frame_available(FlEngine *engine, int64_t texture_id)
Definition: fl_engine.cc:1182
fl_engine_unregister_external_texture
gboolean fl_engine_unregister_external_texture(FlEngine *engine, int64_t texture_id)
Definition: fl_engine.cc:1196
fl_engine_add_view
FlutterViewId fl_engine_add_view(FlEngine *engine, size_t width, size_t height, double pixel_ratio, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data)
Definition: fl_engine.cc:678
fl_task_runner.h
FlEngineUpdateSemanticsHandler
void(* FlEngineUpdateSemanticsHandler)(FlEngine *engine, const FlutterSemanticsUpdate2 *update, gpointer user_data)
Definition: fl_engine_private.h:58
fl_engine_start
gboolean fl_engine_start(FlEngine *engine, GError **error)
Definition: fl_engine.cc:544
fl_engine_notify_display_update
void fl_engine_notify_display_update(FlEngine *engine, const FlutterEngineDisplay *displays, size_t displays_length)
Definition: fl_engine.cc:665
fl_engine_execute_task
void fl_engine_execute_task(FlEngine *engine, FlutterTask *task)
Definition: fl_engine.cc:1214
fl_engine_send_touch_move_event
void fl_engine_send_touch_move_event(FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device)
Definition: fl_engine.cc:1004
flags
FlutterSemanticsFlag flags
Definition: fl_accessible_node.cc:106
fl_engine_add_view_finish
gboolean fl_engine_add_view_finish(FlEngine *engine, GAsyncResult *result, GError **error)
Definition: fl_engine.cc:721
fl_engine_send_window_metrics_event
void fl_engine_send_window_metrics_event(FlEngine *engine, FlutterEngineDisplayId display_id, FlutterViewId view_id, size_t width, size_t height, double pixel_ratio)
Definition: fl_engine.cc:896
fl_engine_remove_view_finish
gboolean fl_engine_remove_view_finish(FlEngine *engine, GAsyncResult *result, GError **error)
Definition: fl_engine.cc:753
fl_engine_send_platform_message_response
gboolean fl_engine_send_platform_message_response(FlEngine *engine, const FlutterPlatformMessageResponseHandle *handle, GBytes *response, GError **error)
Definition: fl_engine.cc:796
fl_engine_register_external_texture
gboolean fl_engine_register_external_texture(FlEngine *engine, int64_t texture_id)
Definition: fl_engine.cc:1189
user_data
G_BEGIN_DECLS G_MODULE_EXPORT FlValue gpointer user_data
Definition: fl_event_channel.h:90
fl_engine_request_app_exit
void fl_engine_request_app_exit(FlEngine *engine)
Definition: fl_engine.cc:1236
fl_engine_new_with_renderer
FlEngine * fl_engine_new_with_renderer(FlDartProject *project, FlRenderer *renderer)
Definition: fl_engine.cc:509
fl_engine_get_display_monitor
FlDisplayMonitor * fl_engine_get_display_monitor(FlEngine *engine)
Definition: fl_engine.cc:539
fl_engine_send_key_event
void fl_engine_send_key_event(FlEngine *engine, const FlutterKeyEvent *event, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data)
Definition: fl_engine.cc:1121
fl_engine_send_mouse_pointer_event
void fl_engine_send_mouse_pointer_event(FlEngine *engine, FlutterViewId view_id, FlutterPointerPhase phase, size_t timestamp, double x, double y, FlutterPointerDeviceKind device_kind, double scroll_delta_x, double scroll_delta_y, int64_t buttons)
Definition: fl_engine.cc:918
fl_dart_project.h
fl_engine_send_touch_remove_event
void fl_engine_send_touch_remove_event(FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device)
Definition: fl_engine.cc:1056
fl_engine_update_accessibility_features
void fl_engine_update_accessibility_features(FlEngine *engine, int32_t flags)
Definition: fl_engine.cc:1225
fl_mouse_cursor_handler.h
fl_engine_get_renderer
FlRenderer * fl_engine_get_renderer(FlEngine *engine)
Definition: fl_engine.cc:534
fl_engine_get_mouse_cursor_handler
FlMouseCursorHandler * fl_engine_get_mouse_cursor_handler(FlEngine *engine)
Definition: fl_engine.cc:1241
fl_engine_get_task_runner
FlTaskRunner * fl_engine_get_task_runner(FlEngine *engine)
Definition: fl_engine.cc:1209
fl_renderer.h
fl_engine_send_key_event_finish
gboolean fl_engine_send_key_event_finish(FlEngine *engine, GAsyncResult *result, gboolean *handled, GError **error)
Definition: fl_engine.cc:1144
fl_engine_set_update_semantics_handler
void fl_engine_set_update_semantics_handler(FlEngine *engine, FlEngineUpdateSemanticsHandler handler, gpointer user_data, GDestroyNotify destroy_notify)
Definition: fl_engine.cc:778
fl_engine_get_embedder_api
FlutterEngineProcTable * fl_engine_get_embedder_api(FlEngine *engine)
Definition: fl_engine.cc:661
fl_engine_set_platform_message_handler
void fl_engine_set_platform_message_handler(FlEngine *engine, FlEnginePlatformMessageHandler handler, gpointer user_data, GDestroyNotify destroy_notify)
Definition: fl_engine.cc:760
height
const uint8_t uint32_t uint32_t * height
Definition: fl_pixel_buffer_texture_test.cc:39
fl_engine_send_touch_add_event
void fl_engine_send_touch_add_event(FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device)
Definition: fl_engine.cc:1030
FlEngineError
FlEngineError
Definition: fl_engine_private.h:25
fl_engine_remove_view
void fl_engine_remove_view(FlEngine *engine, FlutterViewId view_id, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data)
Definition: fl_engine.cc:728
fl_engine.h
error
const uint8_t uint32_t uint32_t GError ** error
Definition: fl_pixel_buffer_texture_test.cc:40
fl_engine_send_pointer_pan_zoom_event
void fl_engine_send_pointer_pan_zoom_event(FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, FlutterPointerPhase phase, double pan_x, double pan_y, double scale, double rotation)
Definition: fl_engine.cc:1082
fl_engine_send_touch_up_event
void fl_engine_send_touch_up_event(FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device)
Definition: fl_engine.cc:952
fl_engine_error_quark
GQuark fl_engine_error_quark(void) G_GNUC_CONST
texture_id
int64_t texture_id
Definition: texture_registrar_unittests.cc:24
width
const uint8_t uint32_t * width
Definition: fl_pixel_buffer_texture_test.cc:38
fl_engine_dispatch_semantics_action
void fl_engine_dispatch_semantics_action(FlEngine *engine, uint64_t id, FlutterSemanticsAction action, GBytes *data)
Definition: fl_engine.cc:1161
fl_engine_send_touch_down_event
void fl_engine_send_touch_down_event(FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device)
Definition: fl_engine.cc:978
fl_display_monitor.h