- video_player: ExoPlayer (Android) / AVPlayer (iOS/macOS) backend with PixelBufferSink, method-channel adapter, Dart-side XVideoPlayer + testing fake. - insets: XInsets singleton + XAnimatedInsets widget lerp the system viewPadding over 220ms so OS bar visibility toggles (immersiveSticky <-> edgeToEdge) slide bottom-/top-anchored UI into place instead of snapping by the nav-bar / status-bar height.
25 lines
645 B
Swift
25 lines
645 B
Swift
import FlutterMacOS
|
|
import AppKit
|
|
|
|
public class XPlugin: NSObject, FlutterPlugin {
|
|
private static var plugins: [NativePlugin] = []
|
|
|
|
public static func register(with registrar: FlutterPluginRegistrar) {
|
|
plugins = [
|
|
FilePlugin(),
|
|
ClipboardPlugin(),
|
|
GalleryPlugin(),
|
|
CameraPlugin(),
|
|
UxVideoPlayerPlugin(),
|
|
UrlPlugin(),
|
|
]
|
|
for plugin in plugins {
|
|
plugin.register(with: registrar)
|
|
}
|
|
}
|
|
|
|
public func handle(_ call: FlutterMethodCall, result: @escaping FlutterResult) {
|
|
result(FlutterMethodNotImplemented)
|
|
}
|
|
}
|