Flutter Engine
 
Loading...
Searching...
No Matches
mock_engine.cc
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// This file is a historical legacy, predating the proc table API. It has been
6// updated to continue to work with the proc table, but new tests should not
7// rely on replacements set up here, but instead use test-local replacements
8// for any functions relevant to that test.
9//
10// Over time existing tests should be migrated and this file should be removed.
11
12#include <cstring>
13#include <unordered_map>
14#include <utility>
15
21#include "gtest/gtest.h"
22
26
27namespace {
28
30 const FlutterEngineAOTDataSource* source,
31 FlutterEngineAOTData* data_out) {
32 return kSuccess;
33}
34
36 return kSuccess;
37}
38
40 const FlutterRendererConfig* config,
42 void* user_data,
44 engine_out) {
45 *engine_out = new _FlutterEngine();
46 return kSuccess;
47}
48
51 return kSuccess;
52}
53
55 const FlutterRendererConfig* config,
57 void* user_data,
59 engine_out) {
60 return kSuccess;
61}
62
64 engine) {
65 delete engine;
66 return kSuccess;
67}
68
70 engine) {
71 return kSuccess;
72}
73
76 const FlutterWindowMetricsEvent* event) {
77 return kSuccess;
78}
79
82 const FlutterPointerEvent* events,
83 size_t events_count) {
84 return kSuccess;
85}
86
88 engine,
89 const FlutterKeyEvent* event,
91 void* user_data) {
92 return kSuccess;
93}
94
99 return kSuccess;
100}
101
104 FlutterDataCallback data_callback,
105 void* user_data,
107 return kSuccess;
108}
109
113 return kSuccess;
114}
115
119 const uint8_t* data,
120 size_t data_length) {
121 return kSuccess;
122}
123
125 engine,
126 const FlutterTask* task) {
127 return kSuccess;
128}
129
131 return false;
132}
133
135 engine,
136 const FlutterLocale** locales,
137 size_t locales_count) {
138 return kSuccess;
139}
140
143 bool enabled) {
144 return kSuccess;
145}
146
150 return kSuccess;
151}
152
155 const FlutterSendSemanticsActionInfo* info) {
156 return kSuccess;
157}
158
161 int64_t texture_identifier) {
162 return kSuccess;
163}
164
167 int64_t texture_identifier) {
168 return kSuccess;
169}
170
173 int64_t texture_identifier) {
174 return kSuccess;
175}
176
181 size_t display_count) {
182 return kSuccess;
183}
184
186 engine,
187 const FlutterAddViewInfo* info) {
188 return kSuccess;
189}
190
192 engine,
193 const FlutterRemoveViewInfo* info) {
194 return kSuccess;
195}
196
197} // namespace
198
200 FlutterEngineProcTable* table) {
201 if (!table) {
202 return kInvalidArguments;
203 }
204
205 FlutterEngineProcTable empty_table = {};
206 *table = empty_table;
207
210 table->Run = &FlutterEngineRun;
239 return kSuccess;
240}
FlutterEngineResult FlutterEngineMarkExternalTextureFrameAvailable(FLUTTER_API_SYMBOL(FlutterEngine) engine, int64_t texture_identifier)
Mark that a new texture frame is available for a given texture identifier.
Definition embedder.cc:3150
FlutterEngineResult FlutterEngineRunTask(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterTask *task)
Inform the engine to run the specified task. This task has been given to the embedder via the Flutter...
Definition embedder.cc:3313
FlutterEngineResult FlutterEngineRun(size_t version, const FlutterRendererConfig *config, const FlutterProjectArgs *args, void *user_data, FLUTTER_API_SYMBOL(FlutterEngine) *engine_out)
Initialize and run a Flutter engine instance and return a handle to it. This is a convenience method ...
Definition embedder.cc:1971
FlutterEngineResult FlutterEngineRegisterExternalTexture(FLUTTER_API_SYMBOL(FlutterEngine) engine, int64_t texture_identifier)
Register an external texture with a unique (per engine) identifier. Only rendering backends that supp...
Definition embedder.cc:3110
FlutterEngineResult FlutterEngineUpdateLocales(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterLocale **locales, size_t locales_count)
Notify a running engine instance that the locale has been updated. The preferred locale must be the f...
Definition embedder.cc:3365
FlutterEngineResult FlutterEngineSendWindowMetricsEvent(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterWindowMetricsEvent *flutter_metrics)
Definition embedder.cc:2660
FLUTTER_EXPORT FlutterEngineResult FlutterEngineDeinitialize(FLUTTER_API_SYMBOL(FlutterEngine) engine)
Stops running the Flutter engine instance. After this call, the embedder is also guaranteed that no m...
Definition embedder.cc:2636
FLUTTER_EXPORT FlutterEngineResult FlutterEngineAddView(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterAddViewInfo *info)
Adds a view.
Definition embedder.cc:2500
FlutterEngineResult FlutterEngineInitialize(size_t version, const FlutterRendererConfig *config, const FlutterProjectArgs *args, void *user_data, FLUTTER_API_SYMBOL(FlutterEngine) *engine_out)
Initialize a Flutter engine instance. This does not run the Flutter application code till the Flutter...
Definition embedder.cc:1987
FlutterEngineResult FlutterEngineUpdateAccessibilityFeatures(FLUTTER_API_SYMBOL(FlutterEngine) engine, FlutterAccessibilityFeature flags)
Sets additional accessibility features.
Definition embedder.cc:3182
FlutterEngineResult FlutterEngineShutdown(FLUTTER_API_SYMBOL(FlutterEngine) engine)
Shuts down a Flutter engine instance. The engine handle is no longer valid for any calls in the embed...
Definition embedder.cc:2649
FlutterEngineResult FlutterPlatformMessageCreateResponseHandle(FLUTTER_API_SYMBOL(FlutterEngine) engine, FlutterDataCallback data_callback, void *user_data, FlutterPlatformMessageResponseHandle **response_out)
Creates a platform message response handle that allows the embedder to set a native callback for a re...
Definition embedder.cc:3028
FlutterEngineResult FlutterEngineCollectAOTData(FlutterEngineAOTData data)
Collects the AOT data.
Definition embedder.cc:1736
FlutterEngineResult FlutterEngineNotifyDisplayUpdate(FLUTTER_API_SYMBOL(FlutterEngine) raw_engine, const FlutterEngineDisplaysUpdateType update_type, const FlutterEngineDisplay *embedder_displays, size_t display_count)
Posts updates corresponding to display changes to a running engine instance.
Definition embedder.cc:3613
FlutterEngineResult FlutterEngineSendPlatformMessage(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterPlatformMessage *flutter_message)
Definition embedder.cc:2977
bool FlutterEngineRunsAOTCompiledDartCode(void)
Returns if the Flutter engine instance will run AOT compiled Dart code. This call has no threading re...
Definition embedder.cc:3424
FlutterEngineResult FlutterEngineSendPointerEvent(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterPointerEvent *pointers, size_t events_count)
Definition embedder.cc:2769
FlutterEngineResult FlutterEngineRunInitialized(FLUTTER_API_SYMBOL(FlutterEngine) engine)
Runs an initialized engine instance. An engine can be initialized via FlutterEngineInitialize....
Definition embedder.cc:2461
FlutterEngineResult FlutterEngineSendSemanticsAction(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterSendSemanticsActionInfo *info)
Dispatch a semantics action to the specified semantics node within a specific view.
Definition embedder.cc:3212
FlutterEngineResult FlutterEngineUnregisterExternalTexture(FLUTTER_API_SYMBOL(FlutterEngine) engine, int64_t texture_identifier)
Unregister a previous texture registration.
Definition embedder.cc:3129
FlutterEngineResult FlutterEngineUpdateSemanticsEnabled(FLUTTER_API_SYMBOL(FlutterEngine) engine, bool enabled)
Enable or disable accessibility semantics.
Definition embedder.cc:3168
FlutterEngineResult FlutterEngineSendKeyEvent(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterKeyEvent *event, FlutterKeyEventCallback callback, void *user_data)
Sends a key event to the engine. The framework will decide whether to handle this event in a synchron...
Definition embedder.cc:2921
FlutterEngineResult FlutterEngineSendPlatformMessageResponse(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterPlatformMessageResponseHandle *handle, const uint8_t *data, size_t data_length)
Send a response from the native side to a platform message from the Dart Flutter application.
Definition embedder.cc:3078
FLUTTER_EXPORT FlutterEngineResult FlutterEngineRemoveView(FLUTTER_API_SYMBOL(FlutterEngine) engine, const FlutterRemoveViewInfo *info)
Removes a view.
Definition embedder.cc:2561
FlutterEngineResult FlutterPlatformMessageReleaseResponseHandle(FLUTTER_API_SYMBOL(FlutterEngine) engine, FlutterPlatformMessageResponseHandle *response)
Collects the handle created using FlutterPlatformMessageCreateResponseHandle.
Definition embedder.cc:3063
FlutterEngineResult FlutterEngineCreateAOTData(const FlutterEngineAOTDataSource *source, FlutterEngineAOTData *data_out)
Creates the necessary data structures to launch a Flutter Dart application in AOT mode....
Definition embedder.cc:1682
#define FLUTTER_API_SYMBOL(symbol)
Definition embedder.h:67
void(* FlutterDataCallback)(const uint8_t *, size_t, void *)
Definition embedder.h:1453
FlutterAccessibilityFeature
Definition embedder.h:91
FlutterEngineResult
Definition embedder.h:72
@ kInvalidArguments
Definition embedder.h:75
@ kSuccess
Definition embedder.h:73
FlutterEngineDisplaysUpdateType
Definition embedder.h:2318
void(* FlutterKeyEventCallback)(bool, void *)
Definition embedder.h:1427
FlutterEngine engine
Definition main.cc:84
G_BEGIN_DECLS G_MODULE_EXPORT FlValue * args
G_BEGIN_DECLS GBytes * message
#define FLUTTER_EXPORT
FlutterDesktopBinaryReply callback
FlutterEngineResult FlutterEngineGetProcAddresses(FlutterEngineProcTable *table)
Gets the table of engine function pointers.
std::vector< FlutterEngineDisplay > * displays
Function-pointer-based versions of the APIs above.
Definition embedder.h:3704
FlutterEngineRegisterExternalTextureFnPtr RegisterExternalTexture
Definition embedder.h:3724
FlutterEnginePlatformMessageReleaseResponseHandleFnPtr PlatformMessageReleaseResponseHandle
Definition embedder.h:3722
FlutterEngineUpdateLocalesFnPtr UpdateLocales
Definition embedder.h:3739
FlutterEngineUnregisterExternalTextureFnPtr UnregisterExternalTexture
Definition embedder.h:3725
FlutterEngineAddViewFnPtr AddView
Definition embedder.h:3748
FlutterEngineRemoveViewFnPtr RemoveView
Definition embedder.h:3749
FlutterEngineSendKeyEventFnPtr SendKeyEvent
Definition embedder.h:3717
FlutterEngineMarkExternalTextureFrameAvailableFnPtr MarkExternalTextureFrameAvailable
Definition embedder.h:3727
FlutterEngineRunsAOTCompiledDartCodeFnPtr RunsAOTCompiledDartCode
Definition embedder.h:3740
FlutterEngineSendWindowMetricsEventFnPtr SendWindowMetricsEvent
Definition embedder.h:3715
FlutterEngineShutdownFnPtr Shutdown
Definition embedder.h:3711
FlutterEngineCreateAOTDataFnPtr CreateAOTData
Definition embedder.h:3708
FlutterEngineSendPointerEventFnPtr SendPointerEvent
Definition embedder.h:3716
FlutterEngineCollectAOTDataFnPtr CollectAOTData
Definition embedder.h:3709
FlutterEngineInitializeFnPtr Initialize
Definition embedder.h:3712
FlutterEngineRunTaskFnPtr RunTask
Definition embedder.h:3738
FlutterEngineNotifyDisplayUpdateFnPtr NotifyDisplayUpdate
Definition embedder.h:3745
FlutterEngineDeinitializeFnPtr Deinitialize
Definition embedder.h:3713
FlutterEngineSendPlatformMessageFnPtr SendPlatformMessage
Definition embedder.h:3718
FlutterEngineRunInitializedFnPtr RunInitialized
Definition embedder.h:3714
FlutterEngineUpdateSemanticsEnabledFnPtr UpdateSemanticsEnabled
Definition embedder.h:3728
FlutterEnginePlatformMessageCreateResponseHandleFnPtr PlatformMessageCreateResponseHandle
Definition embedder.h:3720
FlutterEngineSendPlatformMessageResponseFnPtr SendPlatformMessageResponse
Definition embedder.h:3723
FlutterEngineRunFnPtr Run
Definition embedder.h:3710
FlutterEngineUpdateAccessibilityFeaturesFnPtr UpdateAccessibilityFeatures
Definition embedder.h:3729
FlutterEngineSendSemanticsActionFnPtr SendSemanticsAction
Definition embedder.h:3751
std::shared_ptr< const fml::Mapping > data