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_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERENGINE_INTERNAL_H_ 6 #define FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERENGINE_INTERNAL_H_ 7 8 #import "flutter/shell/platform/darwin/ios/framework/Headers/FlutterEngine.h" 9 10 #import "FlutterPlatformViews_Internal.h" 11 12 #include "flutter/fml/memory/weak_ptr.h" 13 #include "flutter/fml/task_runner.h" 14 #include "flutter/lib/ui/window/pointer_data_packet.h" 15 #include "flutter/lib/ui/window/viewport_metrics.h" 16 #include "flutter/shell/common/platform_view.h" 17 #include "flutter/shell/common/rasterizer.h" 18 #include "flutter/shell/common/shell.h" 19 #include "flutter/shell/platform/darwin/ios/framework/Source/FlutterDartProject_Internal.h" 20 #include "flutter/shell/platform/darwin/ios/framework/Source/FlutterPlatformPlugin.h" 21 #include "flutter/shell/platform/darwin/ios/framework/Source/FlutterTextInputDelegate.h" 22 #include "flutter/shell/platform/darwin/ios/framework/Source/FlutterTextInputPlugin.h" 23 #include "flutter/shell/platform/darwin/ios/platform_view_ios.h" 24 25 #include "flutter/shell/platform/darwin/ios/framework/Headers/FlutterEngine.h" 26 27 @interface FlutterEngine () <FlutterViewEngineDelegate> 28 29 - (flutter::Shell&)shell; 30 31 - (void)updateViewportMetrics:(flutter::ViewportMetrics)viewportMetrics; 32 - (void)dispatchPointerDataPacket:(std::unique_ptr<flutter::PointerDataPacket>)packet; 33 34 - (fml::RefPtr<fml::TaskRunner>)platformTaskRunner; 35 - (fml::RefPtr<fml::TaskRunner>)GPUTaskRunner; 36 37 - (fml::WeakPtr<flutter::PlatformView>)platformView; 38 39 - (flutter::Rasterizer::Screenshot)screenshot:(flutter::Rasterizer::ScreenshotType)type 40 base64Encode:(bool)base64Encode; 41 42 - (FlutterPlatformPlugin*)platformPlugin; 43 - (flutter::FlutterPlatformViewsController*)platformViewsController; 44 - (FlutterTextInputPlugin*)textInputPlugin; 45 - (void)launchEngine:(NSString*)entrypoint libraryURI:(NSString*)libraryOrNil; 46 - (BOOL)createShell:(NSString*)entrypoint libraryURI:(NSString*)libraryOrNil; 47 - (void)notifyViewControllerDeallocated; 48 49 @end 50 51 #endif // FLUTTER_SHELL_PLATFORM_DARWIN_IOS_FRAMEWORK_SOURCE_FLUTTERENGINE_INTERNAL_H_ 52