diff --git a/lib/app.dart b/lib/app.dart index a86e29a..f5f8c32 100644 --- a/lib/app.dart +++ b/lib/app.dart @@ -115,27 +115,7 @@ class AppGlobalModel extends _$AppGlobalModel { Future initApp() async { if (_initialized) return; // init Data - final userProfileDir = Platform.environment["USERPROFILE"]; - final applicationSupportDir = - (await getApplicationSupportDirectory()).absolute.path; - String? applicationBinaryModuleDir; - try { - await initDPrintFile(applicationSupportDir); - } catch (e) { - dPrint("initDPrintFile Error: $e"); - } - if (ConstConf.isMSE && userProfileDir != null) { - applicationBinaryModuleDir = - "$userProfileDir\\AppData\\Local\\Temp\\SCToolbox\\modules"; - } else { - applicationBinaryModuleDir = "$applicationSupportDir\\modules"; - } - dPrint("applicationSupportDir == $applicationSupportDir"); - dPrint("applicationBinaryModuleDir == $applicationBinaryModuleDir"); - state = state.copyWith( - applicationSupportDir: applicationSupportDir, - applicationBinaryModuleDir: applicationBinaryModuleDir, - ); + final applicationSupportDir = await _initAppDir(); // init Rust bridge await RustLib.init(); @@ -170,11 +150,13 @@ class AppGlobalModel extends _$AppGlobalModel { } // init powershell - try { - await SystemHelper.initPowershellPath(); - dPrint("---- Powershell init -----"); - } catch (e) { - dPrint("powershell init failed : $e"); + if (Platform.isWindows) { + try { + await SystemHelper.initPowershellPath(); + dPrint("---- Powershell init -----"); + } catch (e) { + dPrint("powershell init failed : $e"); + } } // get windows info @@ -187,19 +169,20 @@ class AppGlobalModel extends _$AppGlobalModel { } // init windows - windowManager.waitUntilReadyToShow().then((_) async { await windowManager.setTitle("SCToolBox"); await windowManager.setSize(const Size(1280, 810)); await windowManager.setMinimumSize(const Size(1280, 810)); await windowManager.setSkipTaskbar(false); await windowManager.show(); - await Window.initialize(); - await Window.hideWindowControls(); - if (windowsDeviceInfo?.productName.contains("Windows 11") ?? false) { - await Window.setEffect( - effect: WindowEffect.acrylic, - ); + if (Platform.isWindows) { + await Window.initialize(); + await Window.hideWindowControls(); + if (windowsDeviceInfo?.productName.contains("Windows 11") ?? false) { + await Window.setEffect( + effect: WindowEffect.acrylic, + ); + } } }); @@ -248,6 +231,7 @@ class AppGlobalModel extends _$AppGlobalModel { ConstConf.appVersionDate, checkUpdateError.toString())); return false; } + if (!Platform.isWindows) return false; final lastVersion = ConstConf.isMSE ? state.networkVersionData?.mSELastVersionCode : state.networkVersionData?.lastVersionCode; @@ -332,6 +316,44 @@ class AppGlobalModel extends _$AppGlobalModel { state = state.copyWith(appLocale: value); } } + + Future _initAppDir() async { + if (Platform.isWindows) { + final userProfileDir = Platform.environment["USERPROFILE"]; + final applicationSupportDir = + (await getApplicationSupportDirectory()).absolute.path; + String? applicationBinaryModuleDir; + try { + await initDPrintFile(applicationSupportDir); + } catch (e) { + dPrint("initDPrintFile Error: $e"); + } + if (ConstConf.isMSE && userProfileDir != null) { + applicationBinaryModuleDir = + "$userProfileDir\\AppData\\Local\\Temp\\SCToolbox\\modules"; + } else { + applicationBinaryModuleDir = "$applicationSupportDir\\modules"; + } + dPrint("applicationSupportDir == $applicationSupportDir"); + dPrint("applicationBinaryModuleDir == $applicationBinaryModuleDir"); + state = state.copyWith( + applicationSupportDir: applicationSupportDir, + applicationBinaryModuleDir: applicationBinaryModuleDir, + ); + return applicationSupportDir; + } else { + final applicationSupportDir = + (await getApplicationSupportDirectory()).absolute.path; + final applicationBinaryModuleDir = "$applicationSupportDir/modules"; + dPrint("applicationSupportDir == $applicationSupportDir"); + dPrint("applicationBinaryModuleDir == $applicationBinaryModuleDir"); + state = state.copyWith( + applicationSupportDir: applicationSupportDir, + applicationBinaryModuleDir: applicationBinaryModuleDir, + ); + return applicationSupportDir; + } + } } @freezed diff --git a/lib/common/helper/log_helper.dart b/lib/common/helper/log_helper.dart index 0a40ba3..c3db0e9 100644 --- a/lib/common/helper/log_helper.dart +++ b/lib/common/helper/log_helper.dart @@ -7,6 +7,7 @@ import 'package:starcitizen_doctor/common/utils/log.dart'; class SCLoggerHelper { static Future getLogFilePath() async { + if (!Platform.isWindows) return null; Map envVars = Platform.environment; final appDataPath = envVars["appdata"]; if (appDataPath == null) { @@ -30,6 +31,7 @@ class SCLoggerHelper { } static Future getLauncherLogList() async { + if (!Platform.isWindows) return []; final jsonLogPath = await getLogFilePath(); if (jsonLogPath == null) return null; var jsonString = utf8.decode(await File(jsonLogPath).readAsBytes()); diff --git a/lib/common/helper/system_helper.dart b/lib/common/helper/system_helper.dart index 6943e36..db1dc47 100644 --- a/lib/common/helper/system_helper.dart +++ b/lib/common/helper/system_helper.dart @@ -263,13 +263,18 @@ foreach ($adapter in $adapterMemory) { static Future openDir(path, {bool isFile = false}) async { dPrint("SystemHelper.openDir path === $path"); - await Process.run(SystemHelper.powershellPath, - ["explorer.exe", isFile ? "/select,$path" : "\"/select,\"$path\"\""]); + if (Platform.isWindows) { + await Process.run(SystemHelper.powershellPath, + ["explorer.exe", isFile ? "/select,$path" : "\"/select,\"$path\"\""]); + } } static String getHostsFilePath() { - final envVars = Platform.environment; - final systemRoot = envVars["SYSTEMROOT"]; - return "$systemRoot\\System32\\drivers\\etc\\hosts"; + if (Platform.isWindows) { + final envVars = Platform.environment; + final systemRoot = envVars["SYSTEMROOT"]; + return "$systemRoot\\System32\\drivers\\etc\\hosts"; + } + return "/etc/hosts"; } } diff --git a/lib/common/utils/log.dart b/lib/common/utils/log.dart index 751328e..fdd3ddd 100644 --- a/lib/common/utils/log.dart +++ b/lib/common/utils/log.dart @@ -23,10 +23,10 @@ void dPrint(src) async { Future initDPrintFile(String applicationSupportDir) async { final now = DateTime.now(); final logFile = - File("$applicationSupportDir\\logs\\${now.millisecondsSinceEpoch}.log"); + File("$applicationSupportDir/logs/${now.millisecondsSinceEpoch}.log"); await logFile.create(recursive: true); _logFile = logFile; - final logsDir = Directory("$applicationSupportDir\\logs"); + final logsDir = Directory("$applicationSupportDir/logs"); await for (final files in logsDir.list()) { if (files is File) { final stat = await files.stat(); diff --git a/lib/main.dart b/lib/main.dart index e023b3c..8d1eef3 100644 --- a/lib/main.dart +++ b/lib/main.dart @@ -1,3 +1,4 @@ +import 'dart:io'; import 'package:desktop_webview_window/desktop_webview_window.dart'; import 'package:fluent_ui/fluent_ui.dart'; import 'package:hooks_riverpod/hooks_riverpod.dart'; @@ -86,6 +87,7 @@ Widget _defaultWebviewTitleBar(BuildContext context) { child: Row( crossAxisAlignment: CrossAxisAlignment.center, children: [ + if (Platform.isMacOS) const SizedBox(width: 96), IconButton( onPressed: !state.canGoBack ? null : controller.back, icon: const Icon(FluentIcons.chevron_left), diff --git a/lib/ui/webview/webview.dart b/lib/ui/webview/webview.dart index bc3fb8a..dff1bfe 100644 --- a/lib/ui/webview/webview.dart +++ b/lib/ui/webview/webview.dart @@ -2,6 +2,7 @@ import 'dart:async'; import 'dart:convert'; +import 'dart:io'; import 'package:desktop_webview_window/desktop_webview_window.dart'; import 'package:flutter/services.dart'; @@ -63,7 +64,7 @@ class WebViewModel { windowWidth: loginMode ? 960 : 1920, windowHeight: loginMode ? 720 : 1080, userDataFolderWindows: "$applicationSupportDir/webview_data", - title: title)); + title: Platform.isMacOS ? "" : title)); // webview.openDevToolsWindow(); webview.isNavigating.addListener(() async { if (!webview.isNavigating.value && localizationResource.isNotEmpty) { diff --git a/macos/Podfile.lock b/macos/Podfile.lock index 4304fed..1b97e58 100644 --- a/macos/Podfile.lock +++ b/macos/Podfile.lock @@ -55,7 +55,7 @@ SPEC CHECKSUMS: FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 macos_window_utils: 933f91f64805e2eb91a5bd057cf97cd097276663 path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46 - rust_builder: 00402adf154e18cc4598fc3c131257e884010a50 + rust_builder: 4b521d57bf67224da65f32b529be8fab420fca32 screen_retriever: 59634572a57080243dd1bf715e55b6c54f241a38 url_launcher_macos: 5f437abeda8c85500ceb03f5c1938a8c5a705399 window_manager: 3a1844359a6295ab1e47659b1a777e36773cd6e8 diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj index e7ac655..df23c3e 100644 --- a/macos/Runner.xcodeproj/project.pbxproj +++ b/macos/Runner.xcodeproj/project.pbxproj @@ -55,7 +55,7 @@ 331C80D7294CF71000263BE5 /* RunnerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RunnerTests.swift; sourceTree = ""; }; 333000ED22D3DE5D00554162 /* Warnings.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Warnings.xcconfig; sourceTree = ""; }; 335BBD1A22A9A15E00E9071D /* GeneratedPluginRegistrant.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = GeneratedPluginRegistrant.swift; sourceTree = ""; }; - 33CC10ED2044A3C60003C045 /* app.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = app.app; sourceTree = BUILT_PRODUCTS_DIR; }; + 33CC10ED2044A3C60003C045 /* SCToolBox.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = SCToolBox.app; sourceTree = BUILT_PRODUCTS_DIR; }; 33CC10F02044A3C60003C045 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; 33CC10F22044A3C60003C045 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Runner/Assets.xcassets; sourceTree = ""; }; 33CC10F52044A3C60003C045 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.xib; name = Base; path = Base.lproj/MainMenu.xib; sourceTree = ""; }; @@ -132,7 +132,7 @@ 33CC10EE2044A3C60003C045 /* Products */ = { isa = PBXGroup; children = ( - 33CC10ED2044A3C60003C045 /* app.app */, + 33CC10ED2044A3C60003C045 /* SCToolBox.app */, 331C80D5294CF71000263BE5 /* RunnerTests.xctest */, ); name = Products; @@ -236,7 +236,7 @@ ); name = Runner; productName = Runner; - productReference = 33CC10ED2044A3C60003C045 /* app.app */; + productReference = 33CC10ED2044A3C60003C045 /* SCToolBox.app */; productType = "com.apple.product-type.application"; }; /* End PBXNativeTarget section */ @@ -562,6 +562,7 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; INFOPLIST_FILE = Runner/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = SCToolBox; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/../Frameworks", @@ -696,6 +697,7 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; INFOPLIST_FILE = Runner/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = SCToolBox; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/../Frameworks", @@ -718,6 +720,7 @@ CODE_SIGN_STYLE = Automatic; COMBINE_HIDPI_IMAGES = YES; INFOPLIST_FILE = Runner/Info.plist; + INFOPLIST_KEY_CFBundleDisplayName = SCToolBox; LD_RUNPATH_SEARCH_PATHS = ( "$(inherited)", "@executable_path/../Frameworks", diff --git a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index c8582ae..4e26a6f 100644 --- a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -15,7 +15,7 @@ @@ -31,7 +31,7 @@ @@ -65,7 +65,7 @@ @@ -82,7 +82,7 @@ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/1024.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/1024.png new file mode 100644 index 0000000..c4261f1 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/1024.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/128.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/128.png new file mode 100644 index 0000000..2755c18 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/128.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/16.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/16.png new file mode 100644 index 0000000..5cdae44 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/16.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/256.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/256.png new file mode 100644 index 0000000..5559258 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/256.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/32.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/32.png new file mode 100644 index 0000000..0ad5973 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/32.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/512.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/512.png new file mode 100644 index 0000000..b11c9a2 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/512.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/64.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/64.png new file mode 100644 index 0000000..23c17b6 Binary files /dev/null and b/macos/Runner/Assets.xcassets/AppIcon.appiconset/64.png differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json index a2ec33f..2003d5b 100644 --- a/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json +++ b/macos/Runner/Assets.xcassets/AppIcon.appiconset/Contents.json @@ -1,68 +1 @@ -{ - "images" : [ - { - "size" : "16x16", - "idiom" : "mac", - "filename" : "app_icon_16.png", - "scale" : "1x" - }, - { - "size" : "16x16", - "idiom" : "mac", - "filename" : "app_icon_32.png", - "scale" : "2x" - }, - { - "size" : "32x32", - "idiom" : "mac", - "filename" : "app_icon_32.png", - "scale" : "1x" - }, - { - "size" : "32x32", - "idiom" : "mac", - "filename" : "app_icon_64.png", - "scale" : "2x" - }, - { - "size" : "128x128", - "idiom" : "mac", - "filename" : "app_icon_128.png", - "scale" : "1x" - }, - { - "size" : "128x128", - "idiom" : "mac", - "filename" : "app_icon_256.png", - "scale" : "2x" - }, - { - "size" : "256x256", - "idiom" : "mac", - "filename" : "app_icon_256.png", - "scale" : "1x" - }, - { - "size" : "256x256", - "idiom" : "mac", - "filename" : "app_icon_512.png", - "scale" : "2x" - }, - { - "size" : "512x512", - "idiom" : "mac", - "filename" : "app_icon_512.png", - "scale" : "1x" - }, - { - "size" : "512x512", - "idiom" : "mac", - "filename" : "app_icon_1024.png", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} +{"images":[{"size":"128x128","expected-size":"128","filename":"128.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"256x256","expected-size":"256","filename":"256.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"128x128","expected-size":"256","filename":"256.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"256x256","expected-size":"512","filename":"512.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"32x32","expected-size":"32","filename":"32.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"512x512","expected-size":"512","filename":"512.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"16x16","expected-size":"16","filename":"16.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"1x"},{"size":"16x16","expected-size":"32","filename":"32.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"32x32","expected-size":"64","filename":"64.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"},{"size":"512x512","expected-size":"1024","filename":"1024.png","folder":"Assets.xcassets/AppIcon.appiconset/","idiom":"mac","scale":"2x"}]} \ No newline at end of file diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png deleted file mode 100644 index 82b6f9d..0000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png deleted file mode 100644 index 13b35eb..0000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png deleted file mode 100644 index 0a3f5fa..0000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png deleted file mode 100644 index bdb5722..0000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png deleted file mode 100644 index f083318..0000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png deleted file mode 100644 index 326c0e7..0000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png and /dev/null differ diff --git a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png b/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png deleted file mode 100644 index 2f1632c..0000000 Binary files a/macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png and /dev/null differ diff --git a/macos/Runner/Configs/AppInfo.xcconfig b/macos/Runner/Configs/AppInfo.xcconfig index 85215c1..0fdc46d 100644 --- a/macos/Runner/Configs/AppInfo.xcconfig +++ b/macos/Runner/Configs/AppInfo.xcconfig @@ -5,10 +5,10 @@ // 'flutter create' template. // The application's name. By default this is also the title of the Flutter window. -PRODUCT_NAME = app +PRODUCT_NAME = SCToolBox // The application's bundle identifier -PRODUCT_BUNDLE_IDENTIFIER = com.example.app +PRODUCT_BUNDLE_IDENTIFIER = com.xkeyc.tools.sctoolbox // The copyright displayed in application information -PRODUCT_COPYRIGHT = Copyright © 2024 com.example. All rights reserved. +PRODUCT_COPYRIGHT = Copyright © 2024 xkeyC Studio All rights reserved. diff --git a/macos/Runner/DebugProfile.entitlements b/macos/Runner/DebugProfile.entitlements index dddb8a3..91f41fb 100644 --- a/macos/Runner/DebugProfile.entitlements +++ b/macos/Runner/DebugProfile.entitlements @@ -6,6 +6,12 @@ com.apple.security.cs.allow-jit + com.apple.security.files.downloads.read-write + + com.apple.security.files.user-selected.read-write + + com.apple.security.network.client + com.apple.security.network.server diff --git a/macos/Runner/Info.plist b/macos/Runner/Info.plist index 4789daa..90a8d29 100644 --- a/macos/Runner/Info.plist +++ b/macos/Runner/Info.plist @@ -22,6 +22,11 @@ $(FLUTTER_BUILD_NUMBER) LSMinimumSystemVersion $(MACOSX_DEPLOYMENT_TARGET) + NSAppTransportSecurity + + NSAllowsArbitraryLoads + + NSHumanReadableCopyright $(PRODUCT_COPYRIGHT) NSMainNibFile diff --git a/macos/Runner/Release.entitlements b/macos/Runner/Release.entitlements index 852fa1a..02ce7ec 100644 --- a/macos/Runner/Release.entitlements +++ b/macos/Runner/Release.entitlements @@ -4,5 +4,13 @@ com.apple.security.app-sandbox + com.apple.security.files.downloads.read-write + + com.apple.security.files.user-selected.read-write + + com.apple.security.network.client + + com.apple.security.network.server + diff --git a/pubspec.yaml b/pubspec.yaml index bbd13e4..139b38d 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -18,10 +18,10 @@ dependencies: hooks_riverpod: ^2.4.10 json_annotation: ^4.8.1 go_router: ^14.0.1 - window_manager: ^0.3.2 + window_manager: ^0.3.9 fluent_ui: ^4.8.6 flutter_staggered_grid_view: ^0.7.0 - flutter_acrylic: ^1.1.0 + flutter_acrylic: ^1.1.4 url_launcher: ^6.1.10 font_awesome_flutter: ^10.5.0 cupertino_icons: ^1.0.2 diff --git a/rust_builder/macos/rust_builder.podspec b/rust_builder/macos/rust_builder.podspec index 568d23b..ff19726 100644 --- a/rust_builder/macos/rust_builder.podspec +++ b/rust_builder/macos/rust_builder.podspec @@ -19,8 +19,8 @@ A new Flutter FFI plugin project. # `../src/*` so that the C sources can be shared among all target platforms. s.source = { :path => '.' } s.source_files = 'Classes/**/*' + s.frameworks = 'SystemConfiguration' s.dependency 'FlutterMacOS' - s.platform = :osx, '10.11' s.pod_target_xcconfig = { 'DEFINES_MODULE' => 'YES' } s.swift_version = '5.0'