Flutter Engine
runtime_delegate.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_RUNTIME_RUNTIME_DELEGATE_H_
6 #define FLUTTER_RUNTIME_RUNTIME_DELEGATE_H_
7 
8 #include <memory>
9 #include <vector>
10 
11 #include "flutter/flow/layers/layer_tree.h"
12 #include "flutter/lib/ui/semantics/custom_accessibility_action.h"
13 #include "flutter/lib/ui/semantics/semantics_node.h"
14 #include "flutter/lib/ui/text/font_collection.h"
15 #include "flutter/lib/ui/window/platform_message.h"
16 #include "third_party/dart/runtime/include/dart_api.h"
17 
18 namespace flutter {
19 
21  public:
22  virtual std::string DefaultRouteName() = 0;
23 
24  virtual void ScheduleFrame(bool regenerate_layer_tree = true) = 0;
25 
26  virtual void Render(std::unique_ptr<flutter::LayerTree> layer_tree) = 0;
27 
28  virtual void UpdateSemantics(SemanticsNodeUpdates update,
30 
31  virtual void HandlePlatformMessage(
32  std::unique_ptr<PlatformMessage> message) = 0;
33 
34  virtual FontCollection& GetFontCollection() = 0;
35 
36  virtual void OnRootIsolateCreated() = 0;
37 
38  virtual void UpdateIsolateDescription(const std::string isolate_name,
39  int64_t isolate_port) = 0;
40 
41  virtual void SetNeedsReportTimings(bool value) = 0;
42 
43  virtual std::unique_ptr<std::vector<std::string>>
45  const std::vector<std::string>& supported_locale_data) = 0;
46 
47  virtual void RequestDartDeferredLibrary(intptr_t loading_unit_id) = 0;
48 
49  protected:
50  virtual ~RuntimeDelegate();
51 };
52 
53 } // namespace flutter
54 
55 #endif // FLUTTER_RUNTIME_RUNTIME_DELEGATE_H_
virtual void SetNeedsReportTimings(bool value)=0
virtual void UpdateSemantics(SemanticsNodeUpdates update, CustomAccessibilityActionUpdates actions)=0
std::unordered_map< int32_t, SemanticsNode > SemanticsNodeUpdates
virtual void OnRootIsolateCreated()=0
virtual void UpdateIsolateDescription(const std::string isolate_name, int64_t isolate_port)=0
uint8_t value
virtual void RequestDartDeferredLibrary(intptr_t loading_unit_id)=0
virtual std::unique_ptr< std::vector< std::string > > ComputePlatformResolvedLocale(const std::vector< std::string > &supported_locale_data)=0
virtual std::string DefaultRouteName()=0
virtual void ScheduleFrame(bool regenerate_layer_tree=true)=0
virtual void HandlePlatformMessage(std::unique_ptr< PlatformMessage > message)=0
std::unordered_map< int32_t, CustomAccessibilityAction > CustomAccessibilityActionUpdates
virtual void Render(std::unique_ptr< flutter::LayerTree > layer_tree)=0
virtual FontCollection & GetFontCollection()=0