diff --git a/bitsdojo_window_macos/CHANGELOG.md b/bitsdojo_window_macos/CHANGELOG.md index c88b4d5..2d3abb2 100644 --- a/bitsdojo_window_macos/CHANGELOG.md +++ b/bitsdojo_window_macos/CHANGELOG.md @@ -1,3 +1,5 @@ +## 0.1.5 + - Added Swift Package Manager support for macOS ([flutter SPM migration guide](https://docs.flutter.dev/packages-and-plugins/swift-package-manager/for-plugin-authors)) ## 0.1.4 - Various fixes to work with latest Flutter version ## 0.1.3 diff --git a/bitsdojo_window_macos/macos/.gitignore b/bitsdojo_window_macos/macos/.gitignore index d2fd377..9b12d0d 100644 --- a/bitsdojo_window_macos/macos/.gitignore +++ b/bitsdojo_window_macos/macos/.gitignore @@ -4,3 +4,7 @@ # Xcode-related **/xcuserdata/ + +# Swift Package Manager +.build/ +.swiftpm/ diff --git a/bitsdojo_window_macos/macos/bitsdojo_window_macos.podspec b/bitsdojo_window_macos/macos/bitsdojo_window_macos.podspec index 85445bf..9fcba91 100644 --- a/bitsdojo_window_macos/macos/bitsdojo_window_macos.podspec +++ b/bitsdojo_window_macos/macos/bitsdojo_window_macos.podspec @@ -13,7 +13,8 @@ A new flutter plugin project. s.license = { :file => '../LICENSE' } s.author = { 'Your Company' => 'email@example.com' } s.source = { :path => '.' } - s.source_files = 'Classes/**/*.{swift,h,m,mm}' + s.source_files = 'bitsdojo_window_macos/Sources/**/*.{swift,h,m,mm}' + s.public_header_files = 'bitsdojo_window_macos/Sources/**/include/**/*.h' s.dependency 'FlutterMacOS' s.platform = :osx, '10.11' diff --git a/bitsdojo_window_macos/macos/bitsdojo_window_macos/Package.swift b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Package.swift new file mode 100644 index 0000000..3343d24 --- /dev/null +++ b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Package.swift @@ -0,0 +1,37 @@ +// swift-tools-version: 5.9 +// The swift-tools-version declares the minimum version of Swift required to build this package. + +import PackageDescription + +let package = Package( + name: "bitsdojo_window_macos", + platforms: [ + .macOS("10.11"), + ], + products: [ + .library( + name: "bitsdojo-window-macos", + targets: ["bitsdojo_window_macos", "bitsdojo_window_macos_objc"] + ), + ], + dependencies: [ + .package(name: "FlutterFramework", path: "../FlutterFramework"), + ], + targets: [ + .target( + name: "bitsdojo_window_macos_objc", + path: "Sources/bitsdojo_window_macos_objc", + cSettings: [ + .headerSearchPath("include/bitsdojo_window_macos"), + ] + ), + .target( + name: "bitsdojo_window_macos", + dependencies: [ + "bitsdojo_window_macos_objc", + .product(name: "FlutterFramework", package: "FlutterFramework"), + ], + path: "Sources/bitsdojo_window_macos" + ), + ] +) diff --git a/bitsdojo_window_macos/macos/Classes/BitsdojoWindow.swift b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos/BitsdojoWindow.swift similarity index 94% rename from bitsdojo_window_macos/macos/Classes/BitsdojoWindow.swift rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos/BitsdojoWindow.swift index 777e2e3..b611a50 100644 --- a/bitsdojo_window_macos/macos/Classes/BitsdojoWindow.swift +++ b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos/BitsdojoWindow.swift @@ -1,4 +1,7 @@ import Cocoa +#if canImport(bitsdojo_window_macos_objc) +import bitsdojo_window_macos_objc +#endif let bdwAPI = bitsdojo_window_api().pointee; let bdwPrivateAPI = bdwAPI.privateAPI.pointee; diff --git a/bitsdojo_window_macos/macos/Classes/BitsdojoWindowPlugin.swift b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos/BitsdojoWindowPlugin.swift similarity index 100% rename from bitsdojo_window_macos/macos/Classes/BitsdojoWindowPlugin.swift rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos/BitsdojoWindowPlugin.swift diff --git a/bitsdojo_window_macos/macos/Classes/bitsdojo_window.mm b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/bitsdojo_window.mm similarity index 100% rename from bitsdojo_window_macos/macos/Classes/bitsdojo_window.mm rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/bitsdojo_window.mm diff --git a/bitsdojo_window_macos/macos/Classes/bitsdojo_window_api.mm b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/bitsdojo_window_api.mm similarity index 100% rename from bitsdojo_window_macos/macos/Classes/bitsdojo_window_api.mm rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/bitsdojo_window_api.mm diff --git a/bitsdojo_window_macos/macos/Classes/bitsdojo_window_controller.mm b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/bitsdojo_window_controller.mm similarity index 100% rename from bitsdojo_window_macos/macos/Classes/bitsdojo_window_controller.mm rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/bitsdojo_window_controller.mm diff --git a/bitsdojo_window_macos/macos/Classes/bitsdojo_window.h b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window.h similarity index 99% rename from bitsdojo_window_macos/macos/Classes/bitsdojo_window.h rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window.h index 82b3271..09ce9fd 100644 --- a/bitsdojo_window_macos/macos/Classes/bitsdojo_window.h +++ b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window.h @@ -1,6 +1,7 @@ #ifndef bitsdojo_window_h #define bitsdojo_window_h +#import #include "./bitsdojo_window_common.h" // Native private API diff --git a/bitsdojo_window_macos/macos/Classes/bitsdojo_window_api.h b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window_api.h similarity index 100% rename from bitsdojo_window_macos/macos/Classes/bitsdojo_window_api.h rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window_api.h diff --git a/bitsdojo_window_macos/macos/Classes/bitsdojo_window_common.h b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window_common.h similarity index 100% rename from bitsdojo_window_macos/macos/Classes/bitsdojo_window_common.h rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window_common.h diff --git a/bitsdojo_window_macos/macos/Classes/bitsdojo_window_controller.h b/bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window_controller.h similarity index 100% rename from bitsdojo_window_macos/macos/Classes/bitsdojo_window_controller.h rename to bitsdojo_window_macos/macos/bitsdojo_window_macos/Sources/bitsdojo_window_macos_objc/include/bitsdojo_window_macos/bitsdojo_window_controller.h diff --git a/bitsdojo_window_macos/pubspec.yaml b/bitsdojo_window_macos/pubspec.yaml index 183b6b4..f80ba77 100644 --- a/bitsdojo_window_macos/pubspec.yaml +++ b/bitsdojo_window_macos/pubspec.yaml @@ -1,6 +1,6 @@ name: bitsdojo_window_macos description: macOS implementation of the bitsdojo_window plugin. -version: 0.1.4 +version: 0.1.5 homepage: https://www.bitsdojo.com repository: https://github.com/bitsdojo/bitsdojo_window