mirror of
https://github.com/flutter/flutter.git
synced 2026-02-20 02:29:02 +08:00
After this patch, platform messages now take the same path through the system that semantics data does (on Android). Support on iOS will be in another patch.
35 lines
1.0 KiB
C++
35 lines
1.0 KiB
C++
// Copyright 2015 The Chromium Authors. All rights reserved.
|
|
// Use of this source code is governed by a BSD-style license that can be
|
|
// found in the LICENSE file.
|
|
|
|
#ifndef FLUTTER_RUNTIME_RUNTIME_DELEGATE_H_
|
|
#define FLUTTER_RUNTIME_RUNTIME_DELEGATE_H_
|
|
|
|
#include <memory>
|
|
#include <vector>
|
|
|
|
#include "dart/runtime/include/dart_api.h"
|
|
#include "flutter/flow/layers/layer_tree.h"
|
|
#include "flutter/lib/ui/semantics/semantics_node.h"
|
|
#include "flutter/lib/ui/window/platform_message.h"
|
|
|
|
namespace blink {
|
|
|
|
class RuntimeDelegate {
|
|
public:
|
|
virtual void ScheduleFrame() = 0;
|
|
virtual void Render(std::unique_ptr<flow::LayerTree> layer_tree) = 0;
|
|
virtual void UpdateSemantics(std::vector<SemanticsNode> update) = 0;
|
|
virtual void HandlePlatformMessage(ftl::RefPtr<PlatformMessage> message) = 0;
|
|
|
|
virtual void DidCreateMainIsolate(Dart_Isolate isolate);
|
|
virtual void DidCreateSecondaryIsolate(Dart_Isolate isolate);
|
|
|
|
protected:
|
|
virtual ~RuntimeDelegate();
|
|
};
|
|
|
|
} // namespace blink
|
|
|
|
#endif // FLUTTER_RUNTIME_RUNTIME_DELEGATE_H_
|