From 64c7f679e2847f56d492e52380dc64339f2863cd Mon Sep 17 00:00:00 2001
From: CharlVS <77973576+CharlVS@users.noreply.github.com>
Date: Tue, 10 Mar 2026 18:27:26 +0100
Subject: [PATCH] chore: upgrade native hosts to flutter 3.41.3
---
.metadata | 4 +-
android/app/build.gradle | 18 ++-
.../atomicdex/MainActivity.java | 3 +-
android/settings.gradle | 6 +-
app_theme/pubspec.yaml | 2 +-
docs/FLUTTER_VERSION.md | 6 +-
docs/MULTIPLE_FLUTTER_VERSIONS.md | 16 +-
ios/Flutter/AppFrameworkInfo.plist | 2 -
ios/Podfile | 2 +-
ios/Podfile.lock | 2 +-
ios/Runner.xcodeproj/project.pbxproj | 10 +-
ios/Runner/AppDelegate.swift | 141 +++++++++---------
ios/Runner/Info.plist | 21 +++
ios/Runner/SceneDelegate.swift | 5 +
linux/CMakeLists.txt | 8 +-
macos/Podfile.lock | 34 ++---
packages/komodo_ui_kit/pubspec.yaml | 2 +-
pubspec.lock | 2 +-
pubspec.yaml | 2 +-
windows/CMakeLists.txt | 28 ++--
20 files changed, 178 insertions(+), 136 deletions(-)
create mode 100644 ios/Runner/SceneDelegate.swift
diff --git a/.metadata b/.metadata
index d661586e18..53c60d981b 100644
--- a/.metadata
+++ b/.metadata
@@ -4,8 +4,8 @@
# This file should be version controlled.
version:
- revision: b06b8b2710955028a6b562f5aa6fe62941d6febf
- channel: unknown
+ revision: 48c32af0345e9ad5747f78ddce828c7f795f7159
+ channel: stable
project_type: app
diff --git a/android/app/build.gradle b/android/app/build.gradle
index d177384bcb..373ac0e6bb 100644
--- a/android/app/build.gradle
+++ b/android/app/build.gradle
@@ -45,6 +45,8 @@ if (flutterVersionName == null) {
flutterVersionName = '1.0'
}
+def supportedReleaseAbis = ['armeabi-v7a', 'arm64-v8a']
+
android {
namespace 'com.gleec.gleecdex'
@@ -66,17 +68,18 @@ android {
targetSdkVersion 36
versionCode flutterVersionCode.toInteger()
versionName flutterVersionName
-
- ndk {
- //noinspection ChromeOsAbiSupport
- abiFilters 'armeabi-v7a', 'arm64-v8a'
- }
}
- // Android NDK releases page: https://developer.android.com/ndk/downloads
- ndkVersion = android.ndkVersion
+ ndkVersion = "28.2.13676358"
buildTypes {
+ all { buildType ->
+ if (!buildType.debuggable) {
+ // Override Flutter's default ABI list for non-debuggable builds.
+ buildType.ndk.abiFilters.clear()
+ buildType.ndk.abiFilters.addAll(supportedReleaseAbis)
+ }
+ }
release {
// TODO: Add your own signing config for the release build.
// Signing with the debug keys for now, so `flutter run --release` works.
@@ -88,4 +91,3 @@ android {
flutter {
source '../..'
}
-
diff --git a/android/app/src/main/java/com/komodoplatform/atomicdex/MainActivity.java b/android/app/src/main/java/com/komodoplatform/atomicdex/MainActivity.java
index 00efcf06f2..7238f2b3b5 100644
--- a/android/app/src/main/java/com/komodoplatform/atomicdex/MainActivity.java
+++ b/android/app/src/main/java/com/komodoplatform/atomicdex/MainActivity.java
@@ -21,7 +21,6 @@
import io.flutter.plugin.common.BinaryMessenger;
import io.flutter.plugin.common.EventChannel;
import io.flutter.plugin.common.MethodChannel;
-import io.flutter.plugins.GeneratedPluginRegistrant;
public class MainActivity extends FlutterActivity {
@@ -121,7 +120,7 @@ public void onActivityResult(int requestCode, int resultCode,
@Override
public void configureFlutterEngine(@NonNull FlutterEngine flutterEngine) {
- GeneratedPluginRegistrant.registerWith(flutterEngine);
+ super.configureFlutterEngine(flutterEngine);
setupSaf(flutterEngine);
}
}
diff --git a/android/settings.gradle b/android/settings.gradle
index d9923f9381..aad76375ef 100644
--- a/android/settings.gradle
+++ b/android/settings.gradle
@@ -26,7 +26,7 @@ plugins {
id "com.google.gms.google-services" version "4.3.15" apply false
// END: FlutterFire Configuration
// Kotlin release with JVM 21 support: https://kotlinlang.org/docs/releases.html#release-details
- id "org.jetbrains.kotlin.android" version "2.2.10" apply false
-}
+ id "org.jetbrains.kotlin.android" version "2.2.20" apply false
+}
-include ":app"
\ No newline at end of file
+include ":app"
diff --git a/app_theme/pubspec.yaml b/app_theme/pubspec.yaml
index c4e2bd83bb..a4ec910fb4 100644
--- a/app_theme/pubspec.yaml
+++ b/app_theme/pubspec.yaml
@@ -7,7 +7,7 @@ resolution: workspace
environment:
sdk: ">=3.8.1 <4.0.0"
- flutter: ">=3.35.3 <4.0.0"
+ flutter: ">=3.41.3 <4.0.0"
dependencies:
flutter:
diff --git a/docs/FLUTTER_VERSION.md b/docs/FLUTTER_VERSION.md
index af9c76142e..36907c53b0 100644
--- a/docs/FLUTTER_VERSION.md
+++ b/docs/FLUTTER_VERSION.md
@@ -2,7 +2,7 @@
## Supported Flutter Version
-This project supports Flutter `3.35.3`. We aim to keep the project up-to-date with the most recent stable Flutter versions.
+This project supports Flutter `3.41.3`. We aim to keep the project up-to-date with the most recent stable Flutter versions.
## Recommended Approach: Multiple Flutter Versions
@@ -15,14 +15,14 @@ See our guide on [Multiple Flutter Versions](MULTIPLE_FLUTTER_VERSIONS.md) for d
While it's possible to pin your global Flutter installation to a specific version, **this approach is not recommended** due to:
- Lack of isolation between projects
-- Known issues with `flutter pub get` when using Flutter 3.35.3
+- Known issues with `flutter pub get` when using Flutter 3.41.3
- Difficulty switching between versions for different projects
If you still choose to use this method, you can run:
```bash
cd ~/flutter
-git checkout 3.35.3
+git checkout 3.41.3
flutter doctor
```
diff --git a/docs/MULTIPLE_FLUTTER_VERSIONS.md b/docs/MULTIPLE_FLUTTER_VERSIONS.md
index 561083386a..a7404e0ac0 100644
--- a/docs/MULTIPLE_FLUTTER_VERSIONS.md
+++ b/docs/MULTIPLE_FLUTTER_VERSIONS.md
@@ -57,7 +57,7 @@ sudo pacman -R flutter # for Arch
2. Launch Flutter Sidekick
-3. Click on "Versions" in the sidebar and download Flutter version `3.35.3`
+3. Click on "Versions" in the sidebar and download Flutter version `3.41.3`
4. Set this version as the global default by clicking the "Set as Global" button
@@ -92,11 +92,11 @@ sudo pacman -R flutter # for Arch
curl -fsSL https://fvm.app/install.sh | bash
```
-2. Install and use Flutter 3.35.3:
+2. Install and use Flutter 3.41.3:
```bash
- fvm install 3.35.3
- fvm global 3.35.3
+ fvm install 3.41.3
+ fvm global 3.41.3
```
3. Add FVM's default Flutter version to your PATH by adding the following to your `~/.bashrc`, `~/.zshrc`, or equivalent:
@@ -131,11 +131,11 @@ sudo pacman -R flutter # for Arch
choco install fvm
```
-3. Install and use Flutter 3.35.3:
+3. Install and use Flutter 3.41.3:
```powershell
- fvm install 3.35.3
- fvm global 3.35.3
+ fvm install 3.41.3
+ fvm global 3.41.3
```
4. Add FVM's Flutter version to your PATH:
@@ -158,7 +158,7 @@ To use a specific Flutter version for a project:
2. Run:
```bash
- fvm use 3.35.3
+ fvm use 3.41.3
```
This will create a `.fvmrc` file in your project, which specifies the Flutter version to use for this project.
diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist
index d57061dd6b..ab8e063fe8 100644
--- a/ios/Flutter/AppFrameworkInfo.plist
+++ b/ios/Flutter/AppFrameworkInfo.plist
@@ -20,7 +20,5 @@
????
CFBundleVersion
1.0
- MinimumOSVersion
- 13.0
diff --git a/ios/Podfile b/ios/Podfile
index e30b311cb6..11c142e049 100644
--- a/ios/Podfile
+++ b/ios/Podfile
@@ -1,5 +1,5 @@
# Uncomment this line to define a global platform for your project
-platform :ios, '15.5.0'
+platform :ios, '15.6'
# CocoaPods analytics sends network stats synchronously affecting flutter build latency.
ENV['COCOAPODS_DISABLE_STATS'] = 'true'
diff --git a/ios/Podfile.lock b/ios/Podfile.lock
index 9cbad57888..4aab7d0697 100644
--- a/ios/Podfile.lock
+++ b/ios/Podfile.lock
@@ -286,6 +286,6 @@ SPEC CHECKSUMS:
url_launcher_ios: 694010445543906933d732453a59da0a173ae33d
video_player_avfoundation: 2cef49524dd1f16c5300b9cd6efd9611ce03639b
-PODFILE CHECKSUM: f2a1ebd07796ee082cb4d8e8fa742449f698c4f1
+PODFILE CHECKSUM: 8a1940628b81389d4af7ba4fac6ed1cc8374cca0
COCOAPODS: 1.16.2
diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj
index b6f939801a..b7f2942563 100644
--- a/ios/Runner.xcodeproj/project.pbxproj
+++ b/ios/Runner.xcodeproj/project.pbxproj
@@ -11,6 +11,7 @@
3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; };
49484A33FCF0585DB40EBAD9 /* GoogleService-Info.plist in Resources */ = {isa = PBXBuildFile; fileRef = C74478EE63B90E2A48A7AB3C /* GoogleService-Info.plist */; };
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; };
+ 8A47D180A1B84E12912B6323 /* SceneDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 2C0C0C1027A54A2A85585B71 /* SceneDelegate.swift */; };
F1D1A3B2C3D4E5F6A7B8C9D1 /* FdMonitor.swift in Sources */ = {isa = PBXBuildFile; fileRef = F1D1A3B2C3D4E5F6A7B8C9D0 /* FdMonitor.swift */; };
97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; };
97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; };
@@ -43,6 +44,7 @@
1E4F53BBF74C393F00500C43 /* Pods-Runner.profile.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.profile.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.profile.xcconfig"; sourceTree = ""; };
335A3372CF627D5A148D7C1F /* Pods-Runner.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.release.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.release.xcconfig"; sourceTree = ""; };
3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; };
+ 2C0C0C1027A54A2A85585B71 /* SceneDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SceneDelegate.swift; sourceTree = ""; };
6DB340A008F6FECB3B82619D /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; };
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "Runner-Bridging-Header.h"; sourceTree = ""; };
74858FAE1ED2DC5600515810 /* AppDelegate.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; };
@@ -124,6 +126,7 @@
1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */,
1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */,
74858FAE1ED2DC5600515810 /* AppDelegate.swift */,
+ 2C0C0C1027A54A2A85585B71 /* SceneDelegate.swift */,
F1D1A3B2C3D4E5F6A7B8C9D0 /* FdMonitor.swift */,
74858FAD1ED2DC5600515810 /* Runner-Bridging-Header.h */,
);
@@ -306,6 +309,7 @@
buildActionMask = 2147483647;
files = (
74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */,
+ 8A47D180A1B84E12912B6323 /* SceneDelegate.swift in Sources */,
F1D1A3B2C3D4E5F6A7B8C9D1 /* FdMonitor.swift in Sources */,
1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */,
);
@@ -375,7 +379,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 15.6;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
@@ -466,7 +470,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 15.6;
MTL_ENABLE_DEBUG_INFO = YES;
ONLY_ACTIVE_ARCH = YES;
SDKROOT = iphoneos;
@@ -516,7 +520,7 @@
GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE;
GCC_WARN_UNUSED_FUNCTION = YES;
GCC_WARN_UNUSED_VARIABLE = YES;
- IPHONEOS_DEPLOYMENT_TARGET = 13.0;
+ IPHONEOS_DEPLOYMENT_TARGET = 15.6;
MTL_ENABLE_DEBUG_INFO = NO;
SDKROOT = iphoneos;
SUPPORTED_PLATFORMS = iphoneos;
diff --git a/ios/Runner/AppDelegate.swift b/ios/Runner/AppDelegate.swift
index e8f0f3928b..78da4ae82f 100644
--- a/ios/Runner/AppDelegate.swift
+++ b/ios/Runner/AppDelegate.swift
@@ -1,70 +1,71 @@
-import Flutter
-import UIKit
-
-@main
-@objc class AppDelegate: FlutterAppDelegate {
- override func application(
- _ application: UIApplication,
- didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
- ) -> Bool {
- NSLog("🔴 AppDelegate: didFinishLaunchingWithOptions REACHED")
- GeneratedPluginRegistrant.register(with: self)
-
- NSLog("AppDelegate: Setting up FD Monitor channel...")
- setupFdMonitorChannel()
-
- #if DEBUG
- NSLog("AppDelegate: DEBUG build detected, auto-starting FD Monitor...")
- FdMonitor.shared.start(intervalSeconds: 60.0)
- #else
- NSLog("AppDelegate: RELEASE build, FD Monitor NOT auto-started (use Flutter to start manually)")
- #endif
-
- return super.application(application, didFinishLaunchingWithOptions: launchOptions)
- }
-
- private func setupFdMonitorChannel() {
- guard let controller = window?.rootViewController as? FlutterViewController else {
- return
- }
-
- let channel = FlutterMethodChannel(
- name: "com.komodo.wallet/fd_monitor",
- binaryMessenger: controller.binaryMessenger
- )
-
- channel.setMethodCallHandler { [weak self] (call: FlutterMethodCall, result: @escaping FlutterResult) in
- self?.handleFdMonitorMethodCall(call: call, result: result)
- }
- }
-
- private func handleFdMonitorMethodCall(call: FlutterMethodCall, result: @escaping FlutterResult) {
- switch call.method {
- case "start":
- let intervalSeconds: TimeInterval
- if let args = call.arguments as? [String: Any],
- let interval = args["intervalSeconds"] as? Double {
- intervalSeconds = interval
- } else {
- intervalSeconds = 60.0
- }
- FdMonitor.shared.start(intervalSeconds: intervalSeconds)
- result(["success": true, "message": "FD Monitor started with interval: \(intervalSeconds)s"])
-
- case "stop":
- FdMonitor.shared.stop()
- result(["success": true, "message": "FD Monitor stopped"])
-
- case "getCurrentCount":
- let count = FdMonitor.shared.getCurrentCount()
- result(count)
-
- case "logDetailedStatus":
- FdMonitor.shared.logDetailedStatus()
- result(["success": true, "message": "Detailed FD status logged"])
-
- default:
- result(FlutterMethodNotImplemented)
- }
- }
-}
+import Flutter
+import UIKit
+
+@main
+@objc class AppDelegate: FlutterAppDelegate, FlutterImplicitEngineDelegate {
+ private var fdMonitorChannel: FlutterMethodChannel?
+
+ override func application(
+ _ application: UIApplication,
+ didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
+ ) -> Bool {
+ NSLog("🔴 AppDelegate: didFinishLaunchingWithOptions REACHED")
+
+ #if DEBUG
+ NSLog("AppDelegate: DEBUG build detected, auto-starting FD Monitor...")
+ FdMonitor.shared.start(intervalSeconds: 60.0)
+ #else
+ NSLog("AppDelegate: RELEASE build, FD Monitor NOT auto-started (use Flutter to start manually)")
+ #endif
+
+ return super.application(application, didFinishLaunchingWithOptions: launchOptions)
+ }
+
+ func didInitializeImplicitFlutterEngine(_ engineBridge: FlutterImplicitEngineBridge) {
+ GeneratedPluginRegistrant.register(with: engineBridge.pluginRegistry)
+
+ NSLog("AppDelegate: Setting up FD Monitor channel...")
+ setupFdMonitorChannel(binaryMessenger: engineBridge.applicationRegistrar.messenger())
+ }
+
+ private func setupFdMonitorChannel(binaryMessenger: FlutterBinaryMessenger) {
+ fdMonitorChannel = FlutterMethodChannel(
+ name: "com.komodo.wallet/fd_monitor",
+ binaryMessenger: binaryMessenger
+ )
+
+ fdMonitorChannel?.setMethodCallHandler { [weak self] (call: FlutterMethodCall, result: @escaping FlutterResult) in
+ self?.handleFdMonitorMethodCall(call: call, result: result)
+ }
+ }
+
+ private func handleFdMonitorMethodCall(call: FlutterMethodCall, result: @escaping FlutterResult) {
+ switch call.method {
+ case "start":
+ let intervalSeconds: TimeInterval
+ if let args = call.arguments as? [String: Any],
+ let interval = args["intervalSeconds"] as? Double {
+ intervalSeconds = interval
+ } else {
+ intervalSeconds = 60.0
+ }
+ FdMonitor.shared.start(intervalSeconds: intervalSeconds)
+ result(["success": true, "message": "FD Monitor started with interval: \(intervalSeconds)s"])
+
+ case "stop":
+ FdMonitor.shared.stop()
+ result(["success": true, "message": "FD Monitor stopped"])
+
+ case "getCurrentCount":
+ let count = FdMonitor.shared.getCurrentCount()
+ result(count)
+
+ case "logDetailedStatus":
+ FdMonitor.shared.logDetailedStatus()
+ result(["success": true, "message": "Detailed FD status logged"])
+
+ default:
+ result(FlutterMethodNotImplemented)
+ }
+ }
+}
diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index f1425e463b..4782f9b1d9 100644
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -33,6 +33,27 @@
This app needs camera access to scan QR codes
NSPhotoLibraryUsageDescription
This app needs access to your photo library to import QR codes
+ UIApplicationSceneManifest
+
+ UIApplicationSupportsMultipleScenes
+
+ UISceneConfigurations
+
+ UIWindowSceneSessionRoleApplication
+
+
+ UISceneClassName
+ UIWindowScene
+ UISceneConfigurationName
+ flutter
+ UISceneDelegateClassName
+ $(PRODUCT_MODULE_NAME).SceneDelegate
+ UISceneStoryboardFile
+ Main
+
+
+
+
UIApplicationSupportsIndirectInputEvents
UILaunchStoryboardName
diff --git a/ios/Runner/SceneDelegate.swift b/ios/Runner/SceneDelegate.swift
new file mode 100644
index 0000000000..de2a22f0c5
--- /dev/null
+++ b/ios/Runner/SceneDelegate.swift
@@ -0,0 +1,5 @@
+import Flutter
+import UIKit
+
+class SceneDelegate: FlutterSceneDelegate {
+}
diff --git a/linux/CMakeLists.txt b/linux/CMakeLists.txt
index d69f25017b..cdb4d82fa4 100644
--- a/linux/CMakeLists.txt
+++ b/linux/CMakeLists.txt
@@ -1,5 +1,5 @@
# Project-level configuration.
-cmake_minimum_required(VERSION 3.10)
+cmake_minimum_required(VERSION 3.13)
project(runner LANGUAGES CXX)
# The name of the executable created for the application. Change this to change
@@ -128,6 +128,12 @@ foreach(bundled_library ${PLUGIN_BUNDLED_LIBRARIES})
COMPONENT Runtime)
endforeach(bundled_library)
+# Copy the native assets provided by build hooks.
+set(NATIVE_ASSETS_DIR "${PROJECT_BUILD_DIR}native_assets/linux/")
+install(DIRECTORY "${NATIVE_ASSETS_DIR}"
+ DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
+ COMPONENT Runtime)
+
# Fully re-copy the assets directory on each build to avoid having stale files
# from a previous install.
set(FLUTTER_ASSET_DIR_NAME "flutter_assets")
diff --git a/macos/Podfile.lock b/macos/Podfile.lock
index 50dd16991f..0e481369a3 100644
--- a/macos/Podfile.lock
+++ b/macos/Podfile.lock
@@ -209,34 +209,34 @@ EXTERNAL SOURCES:
:path: Flutter/ephemeral/.symlinks/plugins/window_size/macos
SPEC CHECKSUMS:
- device_info_plus: 1b14eed9bf95428983aed283a8d51cce3d8c4215
- file_picker: e716a70a9fe5fd9e09ebc922d7541464289443af
+ device_info_plus: 4fb280989f669696856f8b129e4a5e3cd6c48f76
+ file_picker: 7584aae6fa07a041af2b36a2655122d42f578c1a
Firebase: d99ac19b909cd2c548339c2241ecd0d1599ab02e
- firebase_analytics: c6a3f80cf2e8681b4e6b3402162acf116c4d3a57
- firebase_core: 2af692f4818474ed52eda1ba6aeb448a6a3352af
+ firebase_analytics: 3091f96bd17636f6da5092a4701ffacf67c6e455
+ firebase_core: 7667f880631ae8ad10e3d6567ab7582fe0682326
FirebaseAnalytics: 6433dfd311ba78084fc93bdfc145e8cb75740eae
FirebaseCore: efb3893e5b94f32b86e331e3bd6dadf18b66568e
FirebaseCoreInternal: 9afa45b1159304c963da48addb78275ef701c6b4
FirebaseInstallations: 317270fec08a5d418fdbc8429282238cab3ac843
- flutter_inappwebview_macos: bdf207b8f4ebd58e86ae06cd96b147de99a67c9b
- flutter_secure_storage_darwin: 12d2375c690785d97a4e586f15f11be5ae35d5b0
- flutter_window_close: a0f4f388e956ebafa866e3e171ce837c166eab9c
+ flutter_inappwebview_macos: c2d68649f9f8f1831bfcd98d73fd6256366d9d1d
+ flutter_secure_storage_darwin: ce237a8775b39723566dc72571190a3769d70468
+ flutter_window_close: bd408414cbbf0d39f0d3076c4da0cdbf1c527168
FlutterMacOS: d0db08ddef1a9af05a5ec4b724367152bb0500b1
GoogleAppMeasurement: 700dce7541804bec33db590a5c496b663fbe2539
GoogleUtilities: 00c88b9a86066ef77f0da2fab05f65d7768ed8e1
- komodo_defi_framework: bca6c793d77d5210744e5bdf3780cc3c37f4e578
- local_auth_darwin: fa4b06454df7df8e97c18d7ee55151c57e7af0de
- mobile_scanner: 77265f3dc8d580810e91849d4a0811a90467ed5e
+ komodo_defi_framework: 2e2b89505f158840822ed30ffc7589ff8035e248
+ local_auth_darwin: d2e8c53ef0c4f43c646462e3415432c4dab3ae19
+ mobile_scanner: 9157936403f5a0644ca3779a38ff8404c5434a93
nanopb: fad817b59e0457d11a5dfbde799381cd727c1275
OrderedSet: e539b66b644ff081c73a262d24ad552a69be3a94
- package_info_plus: 12f1c5c2cfe8727ca46cbd0b26677728972d9a5b
- path_provider_foundation: 2b6b4c569c0fb62ec74538f866245ac84301af46
+ package_info_plus: f0052d280d17aa382b932f399edf32507174e870
+ path_provider_foundation: 080d55be775b7414fd5a5ef3ac137b97b097e564
PromisesObjC: f5707f49cb48b9636751c5b2e7d227e43fba9f47
- share_plus: 1fa619de8392a4398bfaf176d441853922614e89
- shared_preferences_foundation: fcdcbc04712aee1108ac7fda236f363274528f78
- url_launcher_macos: c82c93949963e55b228a30115bd219499a6fe404
- video_player_avfoundation: 7c6c11d8470e1675df7397027218274b6d2360b3
- window_size: 339dafa0b27a95a62a843042038fa6c3c48de195
+ share_plus: 510bf0af1a42cd602274b4629920c9649c52f4cc
+ shared_preferences_foundation: 9e1978ff2562383bd5676f64ec4e9aa8fa06a6f7
+ url_launcher_macos: 0fba8ddabfc33ce0a9afe7c5fef5aab3d8d2d673
+ video_player_avfoundation: 2cef49524dd1f16c5300b9cd6efd9611ce03639b
+ window_size: 4bd15034e6e3d0720fd77928a7c42e5492cfece9
PODFILE CHECKSUM: a890bc27443c296eb8ca4510f54c35d2e0f66ed0
diff --git a/packages/komodo_ui_kit/pubspec.yaml b/packages/komodo_ui_kit/pubspec.yaml
index 7fbb077e31..86865547e2 100644
--- a/packages/komodo_ui_kit/pubspec.yaml
+++ b/packages/komodo_ui_kit/pubspec.yaml
@@ -4,7 +4,7 @@ publish_to: none
environment:
sdk: ">=3.8.1 <4.0.0"
- flutter: ">=3.35.3 <4.0.0"
+ flutter: ">=3.41.3 <4.0.0"
resolution: workspace
diff --git a/pubspec.lock b/pubspec.lock
index 3a423f8c60..f620954de5 100644
--- a/pubspec.lock
+++ b/pubspec.lock
@@ -1576,4 +1576,4 @@ packages:
version: "3.1.3"
sdks:
dart: ">=3.9.0-0 <4.0.0"
- flutter: ">=3.35.3"
+ flutter: ">=3.41.3"
diff --git a/pubspec.yaml b/pubspec.yaml
index a6c2398c3b..288d5ffee3 100644
--- a/pubspec.yaml
+++ b/pubspec.yaml
@@ -19,7 +19,7 @@ version: 0.9.4+0
environment:
sdk: ">=3.8.1 <4.0.0"
- flutter: ">=3.35.3 <4.0.0"
+ flutter: ">=3.41.3 <4.0.0"
workspace:
- packages/komodo_ui_kit
diff --git a/windows/CMakeLists.txt b/windows/CMakeLists.txt
index 71310e53ab..fb8bb614d5 100644
--- a/windows/CMakeLists.txt
+++ b/windows/CMakeLists.txt
@@ -6,9 +6,9 @@ project(gleecdex LANGUAGES CXX)
# the on-disk name of your application.
set(BINARY_NAME "gleecdex")
-# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
-# versions of CMake.
-cmake_policy(SET CMP0063 NEW)
+# Explicitly opt in to modern CMake behaviors to avoid warnings with recent
+# versions of CMake.
+cmake_policy(VERSION 3.14...3.25)
# Define build configuration option.
get_property(IS_MULTICONFIG GLOBAL PROPERTY GENERATOR_IS_MULTI_CONFIG)
@@ -83,14 +83,20 @@ install(FILES "${FLUTTER_ICU_DATA_FILE}" DESTINATION "${INSTALL_BUNDLE_DATA_DIR}
install(FILES "${FLUTTER_LIBRARY}" DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
COMPONENT Runtime)
-if(PLUGIN_BUNDLED_LIBRARIES)
- install(FILES "${PLUGIN_BUNDLED_LIBRARIES}"
- DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
- COMPONENT Runtime)
-endif()
-
-# Fully re-copy the assets directory on each build to avoid having stale files
-# from a previous install.
+if(PLUGIN_BUNDLED_LIBRARIES)
+ install(FILES "${PLUGIN_BUNDLED_LIBRARIES}"
+ DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
+ COMPONENT Runtime)
+endif()
+
+# Copy the native assets provided by build hooks.
+set(NATIVE_ASSETS_DIR "${PROJECT_BUILD_DIR}native_assets/windows/")
+install(DIRECTORY "${NATIVE_ASSETS_DIR}"
+ DESTINATION "${INSTALL_BUNDLE_LIB_DIR}"
+ COMPONENT Runtime)
+
+# Fully re-copy the assets directory on each build to avoid having stale files
+# from a previous install.
set(FLUTTER_ASSET_DIR_NAME "flutter_assets")
install(CODE "
file(REMOVE_RECURSE \"${INSTALL_BUNDLE_DATA_DIR}/${FLUTTER_ASSET_DIR_NAME}\")