#include <glib-object.h>#include "flutter/shell/platform/embedder/embedder.h"#include "flutter/shell/platform/linux/fl_display_monitor.h"#include "flutter/shell/platform/linux/fl_keyboard_manager.h"#include "flutter/shell/platform/linux/fl_mouse_cursor_handler.h"#include "flutter/shell/platform/linux/fl_opengl_manager.h"#include "flutter/shell/platform/linux/fl_renderable.h"#include "flutter/shell/platform/linux/fl_task_runner.h"#include "flutter/shell/platform/linux/fl_text_input_handler.h"#include "flutter/shell/platform/linux/public/flutter_linux/fl_dart_project.h"#include "flutter/shell/platform/linux/public/flutter_linux/fl_engine.h"Go to the source code of this file.
Typedefs | |
| typedef gboolean(* | FlEnginePlatformMessageHandler) (FlEngine *engine, const gchar *channel, GBytes *message, const FlutterPlatformMessageResponseHandle *response_handle, gpointer user_data) |
Enumerations | |
| enum | FlEngineError { FL_ENGINE_ERROR_FAILED } |
Functions | |
| GQuark | fl_engine_error_quark (void) G_GNUC_CONST |
| FlEngine * | fl_engine_new_with_binary_messenger (FlBinaryMessenger *binary_messenger) |
| FlutterRendererType | fl_engine_get_renderer_type (FlEngine *engine) |
| FlOpenGLManager * | fl_engine_get_opengl_manager (FlEngine *engine) |
| FlDisplayMonitor * | fl_engine_get_display_monitor (FlEngine *engine) |
| gboolean | fl_engine_start (FlEngine *engine, GError **error) |
| FlutterEngineProcTable * | fl_engine_get_embedder_api (FlEngine *engine) |
| void | fl_engine_notify_display_update (FlEngine *engine, const FlutterEngineDisplay *displays, size_t displays_length) |
| void | fl_engine_set_implicit_view (FlEngine *engine, FlRenderable *renderable) |
| FlutterViewId | fl_engine_add_view (FlEngine *engine, FlRenderable *renderable, size_t min_width, size_t min_height, size_t max_width, size_t max_height, double pixel_ratio, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) |
| gboolean | fl_engine_add_view_finish (FlEngine *engine, GAsyncResult *result, GError **error) |
| FlRenderable * | fl_engine_get_renderable (FlEngine *engine, FlutterViewId view_id) |
| void | fl_engine_remove_view (FlEngine *engine, FlutterViewId view_id, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) |
| gboolean | fl_engine_remove_view_finish (FlEngine *engine, GAsyncResult *result, GError **error) |
| void | fl_engine_set_platform_message_handler (FlEngine *engine, FlEnginePlatformMessageHandler handler, gpointer user_data, GDestroyNotify destroy_notify) |
| void | fl_engine_send_window_metrics_event (FlEngine *engine, FlutterEngineDisplayId display_id, FlutterViewId view_id, size_t min_width, size_t min_height, size_t max_width, size_t max_height, double pixel_ratio) |
| 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) |
| void | fl_engine_send_touch_up_event (FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device) |
| void | fl_engine_send_touch_down_event (FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device) |
| void | fl_engine_send_touch_move_event (FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device) |
| void | fl_engine_send_touch_add_event (FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device) |
| void | fl_engine_send_touch_remove_event (FlEngine *engine, FlutterViewId view_id, size_t timestamp, double x, double y, int32_t device) |
| 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) |
| void | fl_engine_send_key_event (FlEngine *engine, const FlutterKeyEvent *event, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) |
| gboolean | fl_engine_send_key_event_finish (FlEngine *engine, GAsyncResult *result, gboolean *handled, GError **error) |
| void | fl_engine_dispatch_semantics_action (FlEngine *engine, FlutterViewId view_id, uint64_t node_id, FlutterSemanticsAction action, GBytes *data) |
| gboolean | fl_engine_send_platform_message_response (FlEngine *engine, const FlutterPlatformMessageResponseHandle *handle, GBytes *response, GError **error) |
| void | fl_engine_send_platform_message (FlEngine *engine, const gchar *channel, GBytes *message, GCancellable *cancellable, GAsyncReadyCallback callback, gpointer user_data) |
| GBytes * | fl_engine_send_platform_message_finish (FlEngine *engine, GAsyncResult *result, GError **error) |
| FlTaskRunner * | fl_engine_get_task_runner (FlEngine *engine) |
| void | fl_engine_execute_task (FlEngine *engine, FlutterTask *task) |
| gboolean | fl_engine_mark_texture_frame_available (FlEngine *engine, int64_t texture_id) |
| gboolean | fl_engine_register_external_texture (FlEngine *engine, int64_t texture_id) |
| gboolean | fl_engine_unregister_external_texture (FlEngine *engine, int64_t texture_id) |
| void | fl_engine_update_accessibility_features (FlEngine *engine, int32_t flags) |
| void | fl_engine_request_app_exit (FlEngine *engine) |
| FlKeyboardManager * | fl_engine_get_keyboard_manager (FlEngine *engine) |
| FlTextInputHandler * | fl_engine_get_text_input_handler (FlEngine *engine) |
| FlMouseCursorHandler * | fl_engine_get_mouse_cursor_handler (FlEngine *engine) |
| FlEngine * | fl_engine_for_id (int64_t handle) |
| typedef gboolean(* FlEnginePlatformMessageHandler) (FlEngine *engine, const gchar *channel, GBytes *message, const FlutterPlatformMessageResponseHandle *response_handle, gpointer user_data) |
FlEnginePlatformMessageHandler: @engine: an #FlEngine. @channel: channel message received on. @message: message content received from Dart. @response_handle: a handle to respond to the message with. @user_data: (closure): data provided when registering this handler.
Function called when platform messages are received.
Returns: TRUE if message has been accepted.
Definition at line 46 of file fl_engine_private.h.
| enum FlEngineError |
FlEngineError: Errors for #FlEngine objects to set on failures.
| Enumerator | |
|---|---|
| FL_ENGINE_ERROR_FAILED | |
Definition at line 28 of file fl_engine_private.h.
| FlutterViewId fl_engine_add_view | ( | FlEngine * | engine, |
| FlRenderable * | renderable, | ||
| size_t | min_width, | ||
| size_t | min_height, | ||
| size_t | max_width, | ||
| size_t | max_height, | ||
| double | pixel_ratio, | ||
| GCancellable * | cancellable, | ||
| GAsyncReadyCallback | callback, | ||
| gpointer | user_data | ||
| ) |
fl_engine_add_view: @engine: an #FlEngine. @renderable: the object that will render this view. @min_width: minimum width of view in pixels. @min_height: minimum height of view in pixels. @max_width: maximum width of view in pixels. @max_height: maximum height of view in pixels. @pixel_ratio: scale factor for view. @cancellable: (allow-none): a #GCancellable or NULL. @callback: (scope async): a #GAsyncReadyCallback to call when the view is added. @user_data: (closure): user data to pass to @callback.
Asynchronously add a new view. The returned view ID should not be used until this function completes.
Returns: the ID for the view.
Definition at line 924 of file fl_engine.cc.
References FlutterAddViewInfo::add_view_callback, callback, FlutterWindowMetricsEvent::display_id, FL_ENGINE_ERROR_FAILED, fl_engine_error_quark(), g_autoptr(), FlutterWindowMetricsEvent::has_constraints, FlutterWindowMetricsEvent::height, kSuccess, FlutterWindowMetricsEvent::max_height_constraint, FlutterWindowMetricsEvent::max_width_constraint, FlutterWindowMetricsEvent::min_height_constraint, FlutterWindowMetricsEvent::min_width_constraint, FlutterWindowMetricsEvent::pixel_ratio, renderable, self, set_renderable(), FlutterWindowMetricsEvent::struct_size, FlutterAddViewInfo::struct_size, user_data, FlutterAddViewInfo::user_data, view_added_cb(), FlutterWindowMetricsEvent::view_id, FlutterAddViewInfo::view_id, view_id, FlutterAddViewInfo::view_metrics, and FlutterWindowMetricsEvent::width.
Referenced by fl_view_new_for_engine(), fl_view_new_sized_to_content(), TEST(), TEST(), and TEST().
| gboolean fl_engine_add_view_finish | ( | FlEngine * | engine, |
| GAsyncResult * | result, | ||
| GError ** | error | ||
| ) |
fl_engine_add_view_finish: @engine: an #FlEngine.
error is not NULL, *error must be initialized (typically NULL, but an error from a previous call using GLib error handling is explicitly valid).Completes request started with fl_engine_add_view().
Returns: TRUE on success.
Definition at line 977 of file fl_engine.cc.
Referenced by add_view_cb(), add_view_engine_error_cb(), add_view_error_cb(), and view_added_cb().
| void fl_engine_dispatch_semantics_action | ( | FlEngine * | engine, |
| FlutterViewId | view_id, | ||
| uint64_t | node_id, | ||
| FlutterSemanticsAction | action, | ||
| GBytes * | data | ||
| ) |
fl_engine_dispatch_semantics_action: @engine: an #FlEngine. @view_id: the view that the event occured on. @node_id: the semantics action identifier. @action: the action being dispatched. @data: (allow-none): data associated with the action.
Definition at line 1442 of file fl_engine.cc.
References FlutterSendSemanticsActionInfo::action, action, FlutterSendSemanticsActionInfo::data, FlutterSendSemanticsActionInfo::data_length, kSuccess, FlutterSendSemanticsActionInfo::node_id, self, FlutterSendSemanticsActionInfo::struct_size, FlutterSendSemanticsActionInfo::view_id, and view_id.
Referenced by fl_accessible_node_perform_action_impl(), and TEST().
| GQuark fl_engine_error_quark | ( | void | ) |
| void fl_engine_execute_task | ( | FlEngine * | engine, |
| FlutterTask * | task | ||
| ) |
fl_engine_execute_task: @engine: an #FlEngine. @task: a FlutterTask to execute.
Executes given Flutter task.
Definition at line 1504 of file fl_engine.cc.
References kSuccess, and self.
Referenced by fl_task_runner_process_expired_tasks_locked().
| FlEngine * fl_engine_for_id | ( | int64_t | handle | ) |
fl_engine_for_id: @handle: an engine identifier obtained through PlatformDispatcher.instance.engineId.
Returns Flutter engine associated with the identifier. The identifier must be valid and for a running engine otherwise the behavior is undefined. Must be called from the main thread.
Returns: a #FlEngine or NULL.
Definition at line 724 of file fl_engine.cc.
Referenced by TEST().
| FlDisplayMonitor * fl_engine_get_display_monitor | ( | FlEngine * | engine | ) |
fl_engine_get_display_monitor: @engine: an #FlEngine.
Gets the display monitor used by this engine.
Returns: an #FlDisplayMonitor.
Definition at line 754 of file fl_engine.cc.
References self.
Referenced by handle_geometry_changed(), and TEST().
| FlutterEngineProcTable * fl_engine_get_embedder_api | ( | FlEngine * | engine | ) |
fl_engine_get_embedder_api: @engine: an #FlEngine.
Gets the embedder API proc table, allowing modificiations for unit testing.
Returns: a mutable pointer to the embedder API proc table.
Definition at line 903 of file fl_engine.cc.
References self.
Referenced by TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
| FlKeyboardManager * fl_engine_get_keyboard_manager | ( | FlEngine * | engine | ) |
fl_engine_get_keyboard_manager: @engine: an #FlEngine.
Gets the keyboard manager used by this engine.
Returns: an #FlKeyboardManager.
Definition at line 1536 of file fl_engine.cc.
References self.
Referenced by handle_key_event(), sync_modifier_if_needed(), and TEST().
| FlMouseCursorHandler * fl_engine_get_mouse_cursor_handler | ( | FlEngine * | engine | ) |
fl_engine_get_mouse_cursor_handler: @engine: an #FlEngine.
Gets the mouse cursor handler used by this engine.
Returns: an #FlMouseCursorHandler.
Definition at line 1546 of file fl_engine.cc.
References self.
Referenced by cursor_changed_cb(), fl_view_dispose(), setup_cursor(), and TEST().
| FlOpenGLManager * fl_engine_get_opengl_manager | ( | FlEngine * | engine | ) |
fl_engine_get_opengl_manager: @engine: an #FlEngine.
Gets the OpenGL manager used by this engine.
Returns: an #FlOpenGLManager.
Definition at line 749 of file fl_engine.cc.
References self.
Referenced by realize_cb(), and setup_opengl().
| FlRenderable * fl_engine_get_renderable | ( | FlEngine * | engine, |
| FlutterViewId | view_id | ||
| ) |
fl_engine_get_renderable: @engine: an #FlEngine. @view_id: ID to check.
Gets the renderable associated with the give view ID.
Returns: (transfer full): a reference to an #FlRenderable or NULL if none for this ID.
Definition at line 984 of file fl_engine.cc.
References get_renderable(), self, and view_id.
| FlutterRendererType fl_engine_get_renderer_type | ( | FlEngine * | engine | ) |
fl_engine_get_renderer_type: @engine: an #FlEngine.
Gets the rendering type used by this engine.
Returns: type of rendering used.
Definition at line 744 of file fl_engine.cc.
References self.
Referenced by realize_cb().
| FlTaskRunner * fl_engine_get_task_runner | ( | FlEngine * | engine | ) |
fl_engine_get_task_runner: @engine: an #FlEngine.
Returns: task runner responsible for scheduling Flutter tasks.
Definition at line 1499 of file fl_engine.cc.
References self.
Referenced by setup_opengl(), setup_software(), and TEST().
| FlTextInputHandler * fl_engine_get_text_input_handler | ( | FlEngine * | engine | ) |
fl_engine_get_text_input_handler: @engine: an #FlEngine.
Gets the text input handler used by this engine.
Returns: an #FlTextInputHandler.
Definition at line 1541 of file fl_engine.cc.
References self.
Referenced by fl_view_focus_in_event(), and handle_key_event().
| gboolean fl_engine_mark_texture_frame_available | ( | FlEngine * | engine, |
| int64_t | texture_id | ||
| ) |
fl_engine_mark_texture_frame_available: @engine: an #FlEngine. @texture_id: the identifier of the texture whose frame has been updated.
Tells the Flutter engine that a new texture frame is available for the given texture.
Returns: TRUE on success.
Definition at line 1472 of file fl_engine.cc.
References kSuccess, self, and texture_id.
Referenced by mark_texture_frame_available().
| FlEngine * fl_engine_new_with_binary_messenger | ( | FlBinaryMessenger * | binary_messenger | ) |
fl_engine_new_with_binary_messenger: @binary_messenger: an #FlBinaryMessenger.
Creates a new engine with a custom binary messenger. Used for testing.
Returns: a new #FlEngine.
Definition at line 734 of file fl_engine.cc.
References fl_dart_project_new(), fl_engine_new_full(), and g_autoptr().
Referenced by TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
| void fl_engine_notify_display_update | ( | FlEngine * | engine, |
| const FlutterEngineDisplay * | displays, | ||
| size_t | displays_length | ||
| ) |
fl_engine_notify_display_update: @engine: an #FlEngine. @displays: displays present on the system. @displays_length: length of @displays.
Notify the current displays that are in the system.
Definition at line 907 of file fl_engine.cc.
References displays, kFlutterEngineDisplaysUpdateTypeStartup, kSuccess, and self.
Referenced by notify_display_update(), and TEST().
| gboolean fl_engine_register_external_texture | ( | FlEngine * | engine, |
| int64_t | texture_id | ||
| ) |
fl_engine_register_external_texture: @engine: an #FlEngine. @texture_id: the identifier of the texture that is available.
Tells the Flutter engine that a new external texture is available.
Returns: TRUE on success.
Definition at line 1479 of file fl_engine.cc.
References kSuccess, self, and texture_id.
Referenced by register_texture().
| void fl_engine_remove_view | ( | FlEngine * | engine, |
| FlutterViewId | view_id, | ||
| GCancellable * | cancellable, | ||
| GAsyncReadyCallback | callback, | ||
| gpointer | user_data | ||
| ) |
fl_engine_remove_view: @engine: an #FlEngine. @view_id: ID to remove. @cancellable: (allow-none): a #GCancellable or NULL. @callback: (scope async): a #GAsyncReadyCallback to call when the view is added. @user_data: (closure): user data to pass to @callback.
Removes a view previously added with fl_engine_add_view().
Definition at line 990 of file fl_engine.cc.
References callback, FL_ENGINE_ERROR_FAILED, fl_engine_error_quark(), g_autoptr(), kSuccess, remove_renderable(), FlutterRemoveViewInfo::remove_view_callback, self, FlutterRemoveViewInfo::struct_size, user_data, FlutterRemoveViewInfo::user_data, FlutterRemoveViewInfo::view_id, view_id, and view_removed_cb().
Referenced by fl_view_dispose(), TEST(), TEST(), and TEST().
| gboolean fl_engine_remove_view_finish | ( | FlEngine * | engine, |
| GAsyncResult * | result, | ||
| GError ** | error | ||
| ) |
fl_engine_remove_view_finish: @engine: an #FlEngine.
error is not NULL, *error must be initialized (typically NULL, but an error from a previous call using GLib error handling is explicitly valid).Completes request started with fl_engine_remove_view().
Returns: TRUE on succcess.
Definition at line 1017 of file fl_engine.cc.
Referenced by remove_view_cb(), remove_view_engine_error_cb(), and remove_view_error_cb().
| void fl_engine_request_app_exit | ( | FlEngine * | engine | ) |
fl_engine_request_app_exit: @engine: an #FlEngine.
Request the application exits.
Definition at line 1531 of file fl_engine.cc.
References fl_platform_handler_request_app_exit(), and self.
Referenced by window_delete_event_cb().
| void fl_engine_send_key_event | ( | FlEngine * | engine, |
| const FlutterKeyEvent * | event, | ||
| GCancellable * | cancellable, | ||
| GAsyncReadyCallback | callback, | ||
| gpointer | user_data | ||
| ) |
fl_engine_send_key_event: @engine: an #FlEngine. @event: key event to send. @cancellable: (allow-none): a #GCancellable or NULL. @callback: (scope async): a #GAsyncReadyCallback to call when the request is satisfied. @user_data: (closure): user data to pass to @callback.
Send a key event to the engine.
Definition at line 1402 of file fl_engine.cc.
References callback, FL_ENGINE_ERROR_FAILED, fl_engine_error_quark(), g_autoptr(), kSuccess, self, send_key_event_cb(), and user_data.
Referenced by fl_key_embedder_responder_handle_event(), fl_key_embedder_responder_handle_event_impl(), synthesize_simple_event(), TEST(), TEST(), and TEST().
| gboolean fl_engine_send_key_event_finish | ( | FlEngine * | engine, |
| GAsyncResult * | result, | ||
| gboolean * | handled, | ||
| GError ** | error | ||
| ) |
fl_engine_send_key_event_finish: @engine: an #FlEngine.
error is not NULL, *error must be initialized (typically NULL, but an error from a previous call using GLib error handling is explicitly valid).Completes request started with fl_engine_send_key_event().
Returns: TRUE on success.
Definition at line 1425 of file fl_engine.cc.
| 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 | ||
| ) |
fl_engine_send_mouse_pointer_event: @engine: an #FlEngine. @view_id: the view that the event occured on. @phase: mouse phase. @timestamp: time when event occurred in microseconds. @x: x location of mouse cursor. @y: y location of mouse cursor. @device_kind: kind of pointing device. @scroll_delta_x: x offset of scroll. @scroll_delta_y: y offset of scroll. @buttons: buttons that are pressed.
Sends a mouse pointer event to the engine.
Definition at line 1178 of file fl_engine.cc.
References FlutterPointerEvent::buttons, FlutterPointerEvent::device, FlutterPointerEvent::device_kind, kFlutterPointerSignalKindScroll, kMousePointerDeviceId, kSuccess, FlutterPointerEvent::phase, FlutterPointerEvent::scroll_delta_x, FlutterPointerEvent::scroll_delta_y, self, FlutterPointerEvent::signal_kind, FlutterPointerEvent::struct_size, FlutterPointerEvent::timestamp, FlutterPointerEvent::view_id, view_id, x, FlutterPointerEvent::x, FlutterPointerEvent::y, and y.
Referenced by ensure_pointer_added(), fl_pointer_manager_handle_button_press(), fl_pointer_manager_handle_button_release(), fl_pointer_manager_handle_leave(), fl_pointer_manager_handle_motion(), fl_scrolling_manager_handle_scroll_event(), and TEST().
| void fl_engine_send_platform_message | ( | FlEngine * | engine, |
| const gchar * | channel, | ||
| GBytes * | message, | ||
| GCancellable * | cancellable, | ||
| GAsyncReadyCallback | callback, | ||
| gpointer | user_data | ||
| ) |
fl_engine_send_platform_message: @engine: an #FlEngine. @channel: channel to send to. @message: (allow-none): message buffer to send or NULL for an empty message @cancellable: (allow-none): a #GCancellable or NULL. @callback: (scope async): a #GAsyncReadyCallback to call when the request is satisfied. @user_data: (closure): user data to pass to @callback.
Asynchronously sends a platform message.
Definition at line 1075 of file fl_engine.cc.
References callback, FlutterPlatformMessage::channel, channel, FL_ENGINE_ERROR_FAILED, fl_engine_error_quark(), fl_engine_platform_message_response_cb(), kSuccess, FlutterPlatformMessage::message, message, FlutterPlatformMessage::message_size, FlutterPlatformMessage::response_handle, self, FlutterPlatformMessage::struct_size, and user_data.
Referenced by send_on_channel(), and TEST().
| GBytes * fl_engine_send_platform_message_finish | ( | FlEngine * | engine, |
| GAsyncResult * | result, | ||
| GError ** | error | ||
| ) |
fl_engine_send_platform_message_finish: @engine: an #FlEngine.
error is not NULL, *error must be initialized (typically NULL, but an error from a previous call using GLib error handling is explicitly valid).Completes request started with fl_engine_send_platform_message().
Returns: message response on success or NULL on error.
Definition at line 1137 of file fl_engine.cc.
Referenced by send_on_channel_finish().
| gboolean fl_engine_send_platform_message_response | ( | FlEngine * | engine, |
| const FlutterPlatformMessageResponseHandle * | handle, | ||
| GBytes * | response, | ||
| GError ** | error | ||
| ) |
fl_engine_send_platform_message_response: @engine: an #FlEngine. @handle: handle that was provided in FlEnginePlatformMessageHandler. @response: (allow-none): response to send or NULL for an empty response. @error: (allow-none): #GError location to store the error occurring, or NULL to ignore. If error is not NULL, *error must be initialized (typically NULL, but an error from a previous call using GLib error handling is explicitly valid).
Responds to a platform message.
Returns: TRUE on success.
Definition at line 1043 of file fl_engine.cc.
References error, FL_ENGINE_ERROR_FAILED, fl_engine_error_quark(), kSuccess, self, and TRUE.
Referenced by fl_engine_platform_message_cb(), send_response(), and TEST().
| 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 | ||
| ) |
fl_engine_send_pointer_pan_zoom_event: @engine: an #FlEngine. @view_id: the view that the event occured on. @timestamp: time when event occurred in microseconds. @x: x location of mouse cursor. @y: y location of mouse cursor. @phase: mouse phase. @pan_x: x offset of the pan/zoom in pixels. @pan_y: y offset of the pan/zoom in pixels. @scale: scale of the pan/zoom. @rotation: rotation of the pan/zoom in radians.
Sends a pan/zoom pointer event to the engine.
Definition at line 1360 of file fl_engine.cc.
References FlutterPointerEvent::device, FlutterPointerEvent::device_kind, kFlutterPointerDeviceKindTrackpad, kPointerPanZoomDeviceId, kSuccess, FlutterPointerEvent::pan_x, FlutterPointerEvent::pan_y, FlutterPointerEvent::phase, FlutterPointerEvent::rotation, FlutterPointerEvent::scale, self, FlutterPointerEvent::struct_size, FlutterPointerEvent::timestamp, FlutterPointerEvent::view_id, view_id, x, FlutterPointerEvent::x, FlutterPointerEvent::y, and y.
Referenced by fl_scrolling_manager_handle_rotation_begin(), fl_scrolling_manager_handle_rotation_end(), fl_scrolling_manager_handle_rotation_update(), fl_scrolling_manager_handle_scroll_event(), fl_scrolling_manager_handle_zoom_begin(), fl_scrolling_manager_handle_zoom_end(), fl_scrolling_manager_handle_zoom_update(), and TEST().
| void fl_engine_send_touch_add_event | ( | FlEngine * | engine, |
| FlutterViewId | view_id, | ||
| size_t | timestamp, | ||
| double | x, | ||
| double | y, | ||
| int32_t | device | ||
| ) |
fl_engine_send_touch_add_event: @engine: an #FlEngine. @view_id: the view that the event occured on. @timestamp: time when event occurred in microseconds. @x: x location of mouse cursor. @y: y location of mouse cursor. @device: device id.
Sends a touch add event to the engine.
Definition at line 1302 of file fl_engine.cc.
References device, kAdd, kFlutterPointerDeviceKindTouch, kSuccess, self, FlutterPointerEvent::timestamp, view_id, x, and y.
Referenced by ensure_touch_added().
| void fl_engine_send_touch_down_event | ( | FlEngine * | engine, |
| FlutterViewId | view_id, | ||
| size_t | timestamp, | ||
| double | x, | ||
| double | y, | ||
| int32_t | device | ||
| ) |
fl_engine_send_touch_down_event: @engine: an #FlEngine. @view_id: the view that the event occured on. @timestamp: time when event occurred in microseconds. @x: x location of mouse cursor. @y: y location of mouse cursor. @device: device id.
Sends a touch down event to the engine.
Definition at line 1244 of file fl_engine.cc.
References device, kDown, kFlutterPointerButtonMousePrimary, kFlutterPointerDeviceKindTouch, kSuccess, self, FlutterPointerEvent::timestamp, view_id, x, and y.
Referenced by fl_touch_manager_handle_touch_event().
| void fl_engine_send_touch_move_event | ( | FlEngine * | engine, |
| FlutterViewId | view_id, | ||
| size_t | timestamp, | ||
| double | x, | ||
| double | y, | ||
| int32_t | device | ||
| ) |
fl_engine_send_touch_move_event: @engine: an #FlEngine. @view_id: the view that the event occured on. @timestamp: time when event occurred in microseconds. @x: x location of mouse cursor. @y: y location of mouse cursor. @device: device id.
Sends a touch move event to the engine.
Definition at line 1273 of file fl_engine.cc.
References device, kFlutterPointerButtonMousePrimary, kFlutterPointerDeviceKindTouch, kMove, kSuccess, self, FlutterPointerEvent::timestamp, view_id, x, and y.
Referenced by fl_touch_manager_handle_touch_event().
| void fl_engine_send_touch_remove_event | ( | FlEngine * | engine, |
| FlutterViewId | view_id, | ||
| size_t | timestamp, | ||
| double | x, | ||
| double | y, | ||
| int32_t | device | ||
| ) |
fl_engine_send_touch_remove_event: @engine: an #FlEngine. @view_id: the view that the event occured on. @timestamp: time when event occurred in microseconds. @x: x location of mouse cursor. @y: y location of mouse cursor. @device: device id.
Sends a touch remove event to the engine.
Definition at line 1331 of file fl_engine.cc.
References device, kFlutterPointerDeviceKindTouch, kRemove, kSuccess, self, FlutterPointerEvent::timestamp, view_id, x, and y.
Referenced by fl_touch_manager_handle_touch_event().
| void fl_engine_send_touch_up_event | ( | FlEngine * | engine, |
| FlutterViewId | view_id, | ||
| size_t | timestamp, | ||
| double | x, | ||
| double | y, | ||
| int32_t | device | ||
| ) |
fl_engine_send_touch_up_event: @engine: an #FlEngine. @view_id: the view that the event occured on. @timestamp: time when event occurred in microseconds. @x: x location of mouse cursor. @y: y location of mouse cursor. @device: device id.
Sends a touch up event to the engine.
Definition at line 1215 of file fl_engine.cc.
References device, kFlutterPointerDeviceKindTouch, kSuccess, kUp, self, FlutterPointerEvent::timestamp, view_id, x, and y.
Referenced by fl_touch_manager_handle_touch_event().
| void fl_engine_send_window_metrics_event | ( | FlEngine * | engine, |
| FlutterEngineDisplayId | display_id, | ||
| FlutterViewId | view_id, | ||
| size_t | min_width, | ||
| size_t | min_height, | ||
| size_t | max_width, | ||
| size_t | max_height, | ||
| double | pixel_ratio | ||
| ) |
fl_engine_send_window_metrics_event: @engine: an #FlEngine. @display_id: the display this view is rendering on. @view_id: the view that the event occured on. @min_width: minimum width of view in pixels. @min_height: minimum height of view in pixels. @max_width: maximum width of view in pixels. @max_height: maximum height of view in pixels. @pixel_ratio: scale factor for view.
Sends a window metrics event to the engine.
Definition at line 1146 of file fl_engine.cc.
References kSuccess, self, FlutterWindowMetricsEvent::struct_size, and view_id.
Referenced by handle_geometry_changed(), and TEST().
| void fl_engine_set_implicit_view | ( | FlEngine * | engine, |
| FlRenderable * | renderable | ||
| ) |
fl_engine_set_implicit_view: @engine: an #FlEngine. @renderable: the object that will render the implicit view.
Sets the object to render the implicit view.
Definition at line 920 of file fl_engine.cc.
References flutter::kFlutterImplicitViewId, renderable, self, and set_renderable().
Referenced by fl_view_new(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
| void fl_engine_set_platform_message_handler | ( | FlEngine * | engine, |
| FlEnginePlatformMessageHandler | handler, | ||
| gpointer | user_data, | ||
| GDestroyNotify | destroy_notify | ||
| ) |
fl_engine_set_platform_message_handler: @engine: an #FlEngine. @handler: function to call when a platform message is received. @user_data: (closure): user data to pass to @handler. @destroy_notify: (allow-none): a function which gets called to free @user_data, or NULL.
Registers the function called when a platform message is received. Call fl_engine_send_platform_message_response() with the response to this message. Ownership of FlutterPlatformMessageResponseHandle is transferred to the caller, and the message must be responded to avoid memory leaks.
Definition at line 1024 of file fl_engine.cc.
References destroy_notify, handler, self, and user_data.
Referenced by fl_binary_messenger_new().
| gboolean fl_engine_start | ( | FlEngine * | engine, |
| GError ** | error | ||
| ) |
fl_engine_start: @engine: an #FlEngine. @error: (allow-none): #GError location to store the error occurring, or NULL to ignore. If error is not NULL, *error must be initialized (typically NULL, but an error from a previous call using GLib error handling is explicitly valid).
Starts the Flutter engine.
Returns: TRUE on success.
Definition at line 759 of file fl_engine.cc.
References args, FlutterOpenGLRendererConfig::clear_current, FlutterCompositor::collect_backing_store_callback, compositor_collect_backing_store_callback(), compositor_create_backing_store_callback(), compositor_present_view_callback(), FlutterCompositor::create_backing_store_callback, FlutterEngineAOTDataSource::elf_path, error, FlutterOpenGLRendererConfig::fbo_callback, fl_dart_project_get_aot_library_path(), fl_dart_project_get_assets_path(), fl_dart_project_get_dart_entrypoint_arguments(), fl_dart_project_get_icu_data_path(), fl_dart_project_get_ui_thread_policy(), fl_display_monitor_start(), FL_ENGINE_ERROR_FAILED, fl_engine_error_quark(), fl_engine_gl_clear_current(), fl_engine_gl_external_texture_frame_callback(), fl_engine_gl_get_fbo(), fl_engine_gl_make_current(), fl_engine_gl_make_resource_current(), fl_engine_gl_proc_resolver(), fl_engine_on_pre_engine_restart_cb(), fl_engine_platform_message_cb(), fl_engine_post_task(), fl_engine_runs_task_on_current_thread(), fl_engine_update_semantics_cb(), fl_platform_handler_new(), fl_settings_handler_new(), fl_settings_handler_start(), fl_settings_new(), FL_UI_THREAD_POLICY_DEFAULT, FL_UI_THREAD_POLICY_RUN_ON_PLATFORM_THREAD, FL_UI_THREAD_POLICY_RUN_ON_SEPARATE_THREAD, FLUTTER_ENGINE_VERSION, g_autoptr(), flutter::GetSwitchesFromEnvironment(), FlutterOpenGLRendererConfig::gl_external_texture_frame_callback, FlutterOpenGLRendererConfig::gl_proc_resolver, height, FlutterTaskRunnerDescription::identifier, kFlutterEngineAOTDataSourceTypeElfPath, kMetal, kOpenGL, kPlatformTaskRunnerIdentifier, kSoftware, kSuccess, kVulkan, FlutterOpenGLRendererConfig::make_current, FlutterOpenGLRendererConfig::make_resource_current, FlutterRendererConfig::open_gl, FlutterCustomTaskRunners::platform_task_runner, FlutterTaskRunnerDescription::post_task_callback, FlutterOpenGLRendererConfig::present, FlutterCompositor::present_view_callback, FlutterTaskRunnerDescription::runs_task_on_current_thread_callback, self, setup_keyboard(), setup_locales(), FlutterRendererConfig::software, FlutterOpenGLRendererConfig::struct_size, FlutterSoftwareRendererConfig::struct_size, FlutterTaskRunnerDescription::struct_size, FlutterCustomTaskRunners::struct_size, FlutterCompositor::struct_size, FlutterProjectArgs::struct_size, FlutterSoftwareRendererConfig::surface_present_callback, TRUE, FlutterRendererConfig::type, FlutterEngineAOTDataSource::type, FlutterCustomTaskRunners::ui_task_runner, user_data, FlutterTaskRunnerDescription::user_data, and FlutterCompositor::user_data.
Referenced by realize_cb(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), TEST(), and TEST().
| gboolean fl_engine_unregister_external_texture | ( | FlEngine * | engine, |
| int64_t | texture_id | ||
| ) |
fl_engine_unregister_external_texture: @engine: an #FlEngine. @texture_id: the identifier of the texture that is not available anymore.
Tells the Flutter engine that an existing external texture is not available anymore.
Returns: TRUE on success.
Definition at line 1486 of file fl_engine.cc.
References kSuccess, self, and texture_id.
Referenced by unregister_texture().
| void fl_engine_update_accessibility_features | ( | FlEngine * | engine, |
| int32_t | flags | ||
| ) |
fl_engine_update_accessibility_features: @engine: an #FlEngine. @flags: the features to enable in the accessibility tree.
Tells the Flutter engine to update the flags on the accessibility tree.
Definition at line 1517 of file fl_engine.cc.
References kSuccess, and self.
Referenced by update_settings().