5 #ifndef FLUTTER_SHELL_PLATFORM_DARWIN_IOS_PLATFORM_VIEW_IOS_H_
6 #define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_PLATFORM_VIEW_IOS_H_
10 #include "flutter/fml/closure.h"
11 #include "flutter/fml/macros.h"
12 #include "flutter/shell/common/platform_view.h"
42 const std::shared_ptr<IOSContext>& context,
44 const flutter::TaskRunners& task_runners);
47 PlatformView::Delegate& delegate,
50 const flutter::TaskRunners& task_runners,
51 const std::shared_ptr<fml::ConcurrentTaskRunner>& worker_task_runner,
52 const std::shared_ptr<const fml::SyncSwitch>& is_gpu_disabled_sync_switch);
110 flutter::SemanticsNodeUpdates update,
111 flutter::CustomAccessibilityActionUpdates actions) override;
121 const std::vector<std::
string>& supported_locale_data) override;
127 return platform_message_handler_;
131 return platform_message_handler_;
142 class ScopedObserver {
146 void reset(id<NSObject> observer);
147 ScopedObserver(
const ScopedObserver&) =
delete;
148 ScopedObserver& operator=(
const ScopedObserver&) =
delete;
151 id<NSObject> observer_ = nil;
157 std::mutex ios_surface_mutex_;
158 std::unique_ptr<IOSSurface> ios_surface_;
159 std::shared_ptr<IOSContext> ios_context_;
161 std::unique_ptr<AccessibilityBridge> accessibility_bridge_;
162 ScopedObserver dealloc_view_controller_observer_;
163 std::vector<std::string> platform_resolved_locale_;
164 std::shared_ptr<PlatformMessageHandlerIos> platform_message_handler_;
Manages the lifetime of the on-screen and off-screen rendering contexts on iOS. On-screen contexts ar...