Skip to content

Commit 29322ce

Browse files
authored
feat(macos): add Swift Package Manager support
Closes #98 Adds Package.swift at macos/tray_manager/Package.swift so Flutter 3.24+ can build this plugin via SPM. Sources are moved from macos/Classes/ to macos/tray_manager/Classes/ so SPM can reference them. CocoaPods builds are unaffected.
2 parents ceb5456 + 766cc7e commit 29322ce

6 files changed

Lines changed: 26 additions & 1 deletion

File tree

.gitignore

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -4,3 +4,4 @@
44
*.iml
55
pubspec_overrides.yaml
66
pubspec.lock
7+
**/macos/.build/

packages/tray_manager/macos/tray_manager.podspec

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,7 +13,7 @@ A new flutter plugin project.
1313
s.license = { :file => '../LICENSE' }
1414
s.author = { 'Your Company' => 'email@example.com' }
1515
s.source = { :path => '.' }
16-
s.source_files = 'Classes/**/*'
16+
s.source_files = 'tray_manager/Classes/**/*'
1717
s.dependency 'FlutterMacOS'
1818

1919
s.platform = :osx, '10.11'

packages/tray_manager/macos/Classes/TrayIcon.swift renamed to packages/tray_manager/macos/tray_manager/Classes/TrayIcon.swift

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -5,6 +5,8 @@
55
// Created by Lijy91 on 2022/5/15.
66
//
77

8+
import AppKit
9+
810
public class TrayIcon: NSView {
911
public var onTrayIconMouseDown:(() -> Void)?
1012
public var onTrayIconMouseUp:(() -> Void)?

packages/tray_manager/macos/Classes/TrayManagerPlugin.swift renamed to packages/tray_manager/macos/tray_manager/Classes/TrayManagerPlugin.swift

File renamed without changes.

packages/tray_manager/macos/Classes/TrayMenu.swift renamed to packages/tray_manager/macos/tray_manager/Classes/TrayMenu.swift

File renamed without changes.
Lines changed: 22 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,22 @@
1+
// swift-tools-version: 5.9
2+
// The swift-tools-version declares the minimum version of Swift required to build this package.
3+
4+
import PackageDescription
5+
6+
let package = Package(
7+
name: "tray_manager",
8+
platforms: [
9+
.macOS("10.14")
10+
],
11+
products: [
12+
.library(name: "tray-manager", targets: ["tray_manager"])
13+
],
14+
dependencies: [],
15+
targets: [
16+
.target(
17+
name: "tray_manager",
18+
dependencies: [],
19+
path: "Classes"
20+
)
21+
]
22+
)

0 commit comments

Comments
 (0)