diff --git a/android/app/build.gradle b/android/app/build.gradle index 6224b2bf..1443f5a2 100644 --- a/android/app/build.gradle +++ b/android/app/build.gradle @@ -32,7 +32,7 @@ if (keystorePropertiesFile.exists()) { } android { - compileSdkVersion 33 + compileSdkVersion 34 sourceSets { main.java.srcDirs += 'src/main/kotlin' diff --git a/android/build.gradle b/android/build.gradle index 5e8d6cb8..749094e6 100644 --- a/android/build.gradle +++ b/android/build.gradle @@ -24,6 +24,6 @@ subprojects { project.evaluationDependsOn(':app') } -task clean(type: Delete) { +tasks.register("clean", Delete) { delete rootProject.buildDir } diff --git a/ios/Flutter/AppFrameworkInfo.plist b/ios/Flutter/AppFrameworkInfo.plist index 9625e105..7c569640 100644 --- a/ios/Flutter/AppFrameworkInfo.plist +++ b/ios/Flutter/AppFrameworkInfo.plist @@ -21,6 +21,6 @@ CFBundleVersion 1.0 MinimumOSVersion - 11.0 + 12.0 diff --git a/ios/Podfile b/ios/Podfile index 575279e7..c6e47fad 100644 --- a/ios/Podfile +++ b/ios/Podfile @@ -1,5 +1,5 @@ # Uncomment this line to define a global platform for your project -platform :ios, '11.0' +platform :ios, '12.0' # CocoaPods analytics sends network stats synchronously affecting flutter build latency. ENV['COCOAPODS_DISABLE_STATS'] = 'true' @@ -71,7 +71,7 @@ post_install do |installer| 'PERMISSION_SENSORS=0' ] - config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '9.0' + config.build_settings['IPHONEOS_DEPLOYMENT_TARGET'] = '12.0' end end diff --git a/ios/Podfile.lock b/ios/Podfile.lock index b5127951..1ef87ac8 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -51,8 +51,10 @@ PODS: - file_picker (0.0.1): - DKImagePickerController/PhotoGallery - Flutter + - file_selector_ios (0.0.1): + - Flutter - Flutter (1.0.0) - - flutter_image_compress (1.0.0): + - flutter_image_compress_common (1.0.0): - Flutter - Mantle - SDWebImage @@ -73,9 +75,6 @@ PODS: - fluttertoast (0.0.2): - Flutter - Toast - - FMDB (2.7.5): - - FMDB/standard (= 2.7.5) - - FMDB/standard (2.7.5) - geolocator_apple (1.2.0): - Flutter - image_cropper (0.0.4): @@ -83,15 +82,18 @@ PODS: - TOCropViewController (~> 2.6.1) - just_audio (0.0.1): - Flutter - - libwebp (1.2.4): - - libwebp/demux (= 1.2.4) - - libwebp/mux (= 1.2.4) - - libwebp/webp (= 1.2.4) - - libwebp/demux (1.2.4): + - libwebp (1.3.2): + - libwebp/demux (= 1.3.2) + - libwebp/mux (= 1.3.2) + - libwebp/sharpyuv (= 1.3.2) + - libwebp/webp (= 1.3.2) + - libwebp/demux (1.3.2): - libwebp/webp - - libwebp/mux (1.2.4): + - libwebp/mux (1.3.2): - libwebp/demux - - libwebp/webp (1.2.4) + - libwebp/sharpyuv (1.3.2) + - libwebp/webp (1.3.2): + - libwebp/sharpyuv - Mantle (2.2.0): - Mantle/extobjc (= 2.2.0) - Mantle/extobjc (2.2.0) @@ -99,30 +101,32 @@ PODS: - OrderedSet (5.0.0) - package_info_plus (0.4.5): - Flutter - - path_provider_ios (0.0.1): + - path_provider_foundation (0.0.1): - Flutter - - permission_handler_apple (9.0.4): + - FlutterMacOS + - permission_handler_apple (9.3.0): - Flutter - qr_code_scanner (0.2.0): - Flutter - MTBBarcodeScanner - - receive_sharing_intent (0.0.1): + - receive_sharing_intent (1.5.3): - Flutter - - SDWebImage (5.15.5): - - SDWebImage/Core (= 5.15.5) - - SDWebImage/Core (5.15.5) - - SDWebImageWebPCoder (0.11.0): + - SDWebImage (5.18.11): + - SDWebImage/Core (= 5.18.11) + - SDWebImage/Core (5.18.11) + - SDWebImageWebPCoder (0.14.5): - libwebp (~> 1.0) - - SDWebImage/Core (~> 5.15) + - SDWebImage/Core (~> 5.17) - share_plus (0.0.1): - Flutter - - shared_preferences_ios (0.0.1): + - shared_preferences_foundation (0.0.1): - Flutter - - sqflite (0.0.2): + - FlutterMacOS + - sqflite (0.0.3): - Flutter - - FMDB (>= 2.7.5) + - FlutterMacOS - SwiftyGif (5.4.4) - - Toast (4.0.0) + - Toast (4.1.0) - TOCropViewController (2.6.1) - uni_links (0.0.1): - Flutter @@ -130,7 +134,8 @@ PODS: - Flutter - video_player_avfoundation (0.0.1): - Flutter - - wakelock (0.0.1): + - FlutterMacOS + - wakelock_plus (0.0.1): - Flutter - webview_flutter_wkwebview (0.0.1): - Flutter @@ -146,8 +151,9 @@ DEPENDENCIES: - biometric_storage (from `.symlinks/plugins/biometric_storage/ios`) - device_info_plus (from `.symlinks/plugins/device_info_plus/ios`) - file_picker (from `.symlinks/plugins/file_picker/ios`) + - file_selector_ios (from `.symlinks/plugins/file_selector_ios/ios`) - Flutter (from `Flutter`) - - flutter_image_compress (from `.symlinks/plugins/flutter_image_compress/ios`) + - flutter_image_compress_common (from `.symlinks/plugins/flutter_image_compress_common/ios`) - flutter_inappwebview (from `.symlinks/plugins/flutter_inappwebview/ios`) - flutter_keyboard_visibility (from `.symlinks/plugins/flutter_keyboard_visibility/ios`) - flutter_keychain (from `.symlinks/plugins/flutter_keychain/ios`) @@ -157,24 +163,23 @@ DEPENDENCIES: - image_cropper (from `.symlinks/plugins/image_cropper/ios`) - just_audio (from `.symlinks/plugins/just_audio/ios`) - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) - - path_provider_ios (from `.symlinks/plugins/path_provider_ios/ios`) + - path_provider_foundation (from `.symlinks/plugins/path_provider_foundation/darwin`) - permission_handler_apple (from `.symlinks/plugins/permission_handler_apple/ios`) - qr_code_scanner (from `.symlinks/plugins/qr_code_scanner/ios`) - receive_sharing_intent (from `.symlinks/plugins/receive_sharing_intent/ios`) - share_plus (from `.symlinks/plugins/share_plus/ios`) - - shared_preferences_ios (from `.symlinks/plugins/shared_preferences_ios/ios`) - - sqflite (from `.symlinks/plugins/sqflite/ios`) + - shared_preferences_foundation (from `.symlinks/plugins/shared_preferences_foundation/darwin`) + - sqflite (from `.symlinks/plugins/sqflite/darwin`) - uni_links (from `.symlinks/plugins/uni_links/ios`) - url_launcher_ios (from `.symlinks/plugins/url_launcher_ios/ios`) - - video_player_avfoundation (from `.symlinks/plugins/video_player_avfoundation/ios`) - - wakelock (from `.symlinks/plugins/wakelock/ios`) + - video_player_avfoundation (from `.symlinks/plugins/video_player_avfoundation/darwin`) + - wakelock_plus (from `.symlinks/plugins/wakelock_plus/ios`) - webview_flutter_wkwebview (from `.symlinks/plugins/webview_flutter_wkwebview/ios`) SPEC REPOS: trunk: - DKImagePickerController - DKPhotoGallery - - FMDB - libwebp - Mantle - MTBBarcodeScanner @@ -206,10 +211,12 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/device_info_plus/ios" file_picker: :path: ".symlinks/plugins/file_picker/ios" + file_selector_ios: + :path: ".symlinks/plugins/file_selector_ios/ios" Flutter: :path: Flutter - flutter_image_compress: - :path: ".symlinks/plugins/flutter_image_compress/ios" + flutter_image_compress_common: + :path: ".symlinks/plugins/flutter_image_compress_common/ios" flutter_inappwebview: :path: ".symlinks/plugins/flutter_inappwebview/ios" flutter_keyboard_visibility: @@ -228,8 +235,8 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/just_audio/ios" package_info_plus: :path: ".symlinks/plugins/package_info_plus/ios" - path_provider_ios: - :path: ".symlinks/plugins/path_provider_ios/ios" + path_provider_foundation: + :path: ".symlinks/plugins/path_provider_foundation/darwin" permission_handler_apple: :path: ".symlinks/plugins/permission_handler_apple/ios" qr_code_scanner: @@ -238,18 +245,18 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/receive_sharing_intent/ios" share_plus: :path: ".symlinks/plugins/share_plus/ios" - shared_preferences_ios: - :path: ".symlinks/plugins/shared_preferences_ios/ios" + shared_preferences_foundation: + :path: ".symlinks/plugins/shared_preferences_foundation/darwin" sqflite: - :path: ".symlinks/plugins/sqflite/ios" + :path: ".symlinks/plugins/sqflite/darwin" uni_links: :path: ".symlinks/plugins/uni_links/ios" url_launcher_ios: :path: ".symlinks/plugins/url_launcher_ios/ios" video_player_avfoundation: - :path: ".symlinks/plugins/video_player_avfoundation/ios" - wakelock: - :path: ".symlinks/plugins/wakelock/ios" + :path: ".symlinks/plugins/video_player_avfoundation/darwin" + wakelock_plus: + :path: ".symlinks/plugins/wakelock_plus/ios" webview_flutter_wkwebview: :path: ".symlinks/plugins/webview_flutter_wkwebview/ios" @@ -262,44 +269,44 @@ SPEC CHECKSUMS: at_onboarding_flutter: e8219b6d0bfb236d3837ec3528871aebdcc56e8d audio_session: 4f3e461722055d21515cf3261b64c973c062f345 biometric_storage: 1400f1382af3a4cc2bf05340e13c3d8de873ceb9 - device_info_plus: e5c5da33f982a436e103237c0c85f9031142abed + device_info_plus: c6fb39579d0f423935b0c9ce7ee2f44b71b9fce6 DKImagePickerController: b512c28220a2b8ac7419f21c491fc8534b7601ac DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179 - file_picker: ce3938a0df3cc1ef404671531facef740d03f920 - Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854 - flutter_image_compress: 5a5e9aee05b6553048b8df1c3bc456d0afaac433 - flutter_inappwebview: bfd58618f49dc62f2676de690fc6dcda1d6c3721 + file_picker: 15fd9539e4eb735dc54bae8c0534a7a9511a03de + file_selector_ios: b6a6c6667913d571590169ef946afbafe3b52688 + Flutter: e0871f40cf51350855a761d2e70bf5af5b9b5de7 + flutter_image_compress_common: ec1d45c362c9d30a3f6a0426c297f47c52007e3e + flutter_inappwebview: 3d32228f1304635e7c028b0d4252937730bbc6cf flutter_keyboard_visibility: 0339d06371254c3eb25eeb90ba8d17dca8f9c069 flutter_keychain: 01aabf894ffe8b01adfda1d9df21c210c1b4b452 flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743 - fluttertoast: 16fbe6039d06a763f3533670197d01fc73459037 - FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a - geolocator_apple: cc556e6844d508c95df1e87e3ea6fa4e58c50401 - image_cropper: 60c2789d1f1a78c873235d4319ca0c34a69f2d98 + fluttertoast: fafc4fa4d01a6a9e4f772ecd190ffa525e9e2d9c + geolocator_apple: 9157311f654584b9bb72686c55fc02a97b73f461 + image_cropper: a3291c624a953049bc6a02e1f8c8ceb162a24b25 just_audio: baa7252489dbcf47a4c7cc9ca663e9661c99aafa - libwebp: f62cb61d0a484ba548448a4bd52aabf150ff6eef + libwebp: 1786c9f4ff8a279e4dac1e8f385004d5fc253009 Mantle: c5aa8794a29a022dfbbfc9799af95f477a69b62d MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c - package_info_plus: 6c92f08e1f853dc01228d6f553146438dafcd14e - path_provider_ios: 14f3d2fd28c4fdb42f44e0f751d12861c43cee02 - permission_handler_apple: 44366e37eaf29454a1e7b1b7d736c2cceaeb17ce + package_info_plus: 115f4ad11e0698c8c1c5d8a689390df880f47e85 + path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c + permission_handler_apple: 036b856153a2b1f61f21030ff725f3e6fece2b78 qr_code_scanner: bb67d64904c3b9658ada8c402e8b4d406d5d796e - receive_sharing_intent: c0d87310754e74c0f9542947e7cbdf3a0335a3b1 - SDWebImage: fd7e1a22f00303e058058278639bf6196ee431fe - SDWebImageWebPCoder: 295a6573c512f54ad2dd58098e64e17dcf008499 - share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68 - shared_preferences_ios: 548a61f8053b9b8a49ac19c1ffbc8b92c50d68ad - sqflite: 6d358c025f5b867b29ed92fc697fd34924e11904 + receive_sharing_intent: 753f808c6be5550247f6a20f2a14972466a5f33c + SDWebImage: a3ba0b8faac7228c3c8eadd1a55c9c9fe5e16457 + SDWebImageWebPCoder: c94f09adbca681822edad9e532ac752db713eabf + share_plus: c3fef564749587fc939ef86ffb283ceac0baf9f5 + shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695 + sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f - Toast: 91b396c56ee72a5790816f40d3a94dd357abc196 + Toast: ec33c32b8688982cecc6348adeae667c1b9938da TOCropViewController: edfd4f25713d56905ad1e0b9f5be3fbe0f59c863 uni_links: d97da20c7701486ba192624d99bffaaffcfc298a - url_launcher_ios: 839c58cdb4279282219f5e248c3321761ff3c4de - video_player_avfoundation: e489aac24ef5cf7af82702979ed16f2a5ef84cff - wakelock: d0fc7c864128eac40eba1617cb5264d9c940b46f - webview_flutter_wkwebview: 2e2d318f21a5e036e2c3f26171342e95908bd60a + url_launcher_ios: 6116280ddcfe98ab8820085d8d76ae7449447586 + video_player_avfoundation: 02011213dab73ae3687df27ce441fbbcc82b5579 + wakelock_plus: 8b09852c8876491e4b6d179e17dfe2a0b5f60d47 + webview_flutter_wkwebview: be0f0d33777f1bfd0c9fdcb594786704dbf65f36 -PODFILE CHECKSUM: 68270a1774750c3fa9dc0f76f4e1113b2d9c36d6 +PODFILE CHECKSUM: 914008eeca507ef3ebba678a2c566c58fec81d88 -COCOAPODS: 1.11.3 +COCOAPODS: 1.12.1 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index e2f1eab7..b517368e 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -200,13 +200,13 @@ buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( 7C5290E0F86BF51B0B45E20C /* [CP] Check Pods Manifest.lock */, + 9705A1C41CF9048500538489 /* Embed Frameworks */, + 1860C84626AEBEE50032F9E0 /* Embed App Extensions */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, 97C146EC1CF9000F007C117D /* Resources */, - 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, - 1860C84626AEBEE50032F9E0 /* Embed App Extensions */, 3F8FC504CBA1C83906D95ABC /* [CP] Embed Pods Frameworks */, ); buildRules = ( @@ -226,7 +226,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 1250; - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1510; ORGANIZATIONNAME = ""; TargetAttributes = { 1860C83A26AEBEE50032F9E0 = { @@ -287,6 +287,7 @@ files = ( ); inputPaths = ( + "${TARGET_BUILD_DIR}/${INFOPLIST_PATH}", ); name = "Thin Binary"; outputPaths = ( diff --git a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index c87d15a3..5e31d3d3 100644 --- a/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/ios/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ cropImageDataWithDartLibrary( final DateTime time1 = DateTime.now(); //Decode source to Animation. It can holds multi frame. - Animation? src; + Image? src; //LoadBalancer lb; if (kIsWeb) { - src = decodeAnimation(data); + src = decodeImage(data); } else { - src = await compute(decodeAnimation, data); + src = await compute(decodeImage, data); } if (src != null) { //handle every frame. @@ -58,24 +58,29 @@ Future cropImageDataWithDartLibrary( image = bakeOrientation(image); if (editAction.needCrop) { - image = copyCrop(image, cropRect!.left.toInt(), cropRect.top.toInt(), - cropRect.width.toInt(), cropRect.height.toInt()); + image = copyCrop( + image, + x: cropRect!.left.toInt(), + y: cropRect.top.toInt(), + width: cropRect.width.toInt(), + height: cropRect.height.toInt(), + ); } if (editAction.needFlip) { - late Flip mode; + late FlipDirection mode; if (editAction.flipY && editAction.flipX) { - mode = Flip.both; + mode = FlipDirection.both; } else if (editAction.flipY) { - mode = Flip.horizontal; + mode = FlipDirection.horizontal; } else if (editAction.flipX) { - mode = Flip.vertical; + mode = FlipDirection.vertical; } - image = flip(image, mode); + image = flip(image, direction: mode); } if (editAction.hasRotateAngle) { - image = copyRotate(image, editAction.rotateAngle); + image = copyRotate(image, angle: editAction.rotateAngle); } final DateTime time3 = DateTime.now(); print('${time3.difference(time2)} : crop/flip/rotate'); @@ -98,12 +103,12 @@ Future cropImageDataWithDartLibrary( final bool onlyOneFrame = src.numFrames == 1; //If there's only one frame, encode it to jpg. if (kIsWeb) { - fileData = onlyOneFrame ? encodeJpg(src.first) : encodeGifAnimation(src); + fileData = onlyOneFrame ? encodeJpg(src) : encodeGif(src); } else { //fileData = await lb.run, Image>(encodeJpg, src); fileData = onlyOneFrame - ? await compute(encodeJpg, src.first) - : await compute(encodeGifAnimation, src); + ? await compute(encodeJpg, src) + : await compute(encodeGif, src); } } final DateTime time5 = DateTime.now(); @@ -138,7 +143,7 @@ void _isolateDecodeImage(SendPort port) { rPort.listen((dynamic message) { final SendPort send = message[0] as SendPort; final List data = message[1] as List; - send.send(decodeImage(data)); + send.send(decodeImage(Uint8List.fromList(data))); }); } diff --git a/lib/desktop/screens/desktop_share_profile/desktop_share_profile_page.dart b/lib/desktop/screens/desktop_share_profile/desktop_share_profile_page.dart index 7ce6cf06..1521e6a3 100644 --- a/lib/desktop/screens/desktop_share_profile/desktop_share_profile_page.dart +++ b/lib/desktop/screens/desktop_share_profile/desktop_share_profile_page.dart @@ -89,13 +89,13 @@ class _DesktopShareProfilePageState extends State { style: appTheme.textTheme.bodyLarge, ), SizedBox(height: DesktopDimens.paddingNormal), - QrImage( + QrImageView( data: widget.atSign, size: (MediaQuery.of(context).size.height - 60) / 3 * 2 - 120, - foregroundColor: Colors.black, + eyeStyle: QrEyeStyle(color: Colors.black), backgroundColor: Colors.white, ) ], diff --git a/lib/desktop/widgets/desktop_showcase_widget.dart b/lib/desktop/widgets/desktop_showcase_widget.dart index 180e57dd..6eb0c9b9 100644 --- a/lib/desktop/widgets/desktop_showcase_widget.dart +++ b/lib/desktop/widgets/desktop_showcase_widget.dart @@ -28,10 +28,10 @@ class DesktopShowCaseWidget extends StatelessWidget { final appTheme = AppTheme.of(context); return Showcase.withWidget( key: globalKey, - shapeBorder: CircleBorder(), - disableAnimation: true, + targetShapeBorder: CircleBorder(), + disableMovingAnimation: true, container: container, - overlayPadding: EdgeInsets.all(6), + targetPadding: EdgeInsets.all(6), overlayOpacity: overlayOpacity, overlayColor: overlayColor, height: childSize * 1.5, diff --git a/lib/screens/edit_persona/edit_category_fields.dart b/lib/screens/edit_persona/edit_category_fields.dart index bceccfa2..ccc1df9e 100644 --- a/lib/screens/edit_persona/edit_category_fields.dart +++ b/lib/screens/edit_persona/edit_category_fields.dart @@ -20,6 +20,7 @@ import 'package:provider/provider.dart'; class EditCategoryFields extends StatefulWidget { final AtCategory category; final String filedHeading; + EditCategoryFields({required this.category, required this.filedHeading}); @override @@ -415,72 +416,74 @@ class _EditCategoryFieldsState extends State { Widget inputField(BasicData basicData, {bool isCustomField = false}) { return Slidable( key: UniqueKey(), - actionPane: SlidableDrawerActionPane(), - actionExtentRatio: 0.15, - secondaryActions: null, - // TODO: if slidable action is not required remove this commneted part - // ? [ - // IconSlideAction( - // caption: '', - // iconWidget: Padding( - // padding: const EdgeInsets.only(top: 10.0), - // child: Text( - // 'Edit', - // ), - // ), - // onTap: () { - // SetupRoutes.push(context, Routes.ADD_CUSTOM_FIELD, - // arguments: { - // 'onSave': (BasicData data, int index) { - // List? customFields = - // Provider.of(context, listen: false) - // .user()! - // .customFields[widget.category.name]; - // if (index > -1) { - // setState(() { - // customFields![index] = data; - // }); - // } else { - // customFields!.add(data); - // } - // }, - // 'basicData': basicData, - // 'isEdit': true, - // 'category': widget.category - // }); - // }, - // ), - // IconSlideAction( - // caption: '', - // color: ColorConstants.red, - // iconWidget: Padding( - // padding: const EdgeInsets.only(top: 10.0), - // child: Text( - // 'Delete', - // style: TextStyle(color: Colors.white), - // ), - // ), - // onTap: () { - // if (!isCustomField) { - // updateDefinedFields( - // BasicData(accountName: basicData.accountName)); - // } - // List? customFields = - // Provider.of(context, listen: false) - // .user()! - // .customFields[widget.category.name]; - - // var index = customFields!.indexOf(basicData); - // customFields[index] = BasicData( - // accountName: - // customFields[index].accountName! + AtText.IS_DELETED, - // isPrivate: customFields[index].isPrivate); - // setState(() {}); - // }, - // ), - - // ] - // : null, + startActionPane: ActionPane( + motion: ScrollMotion(), + extentRatio: 0.15, + children: [], + // TODO: if slidable action is not required remove this commneted part + // ? [ + // IconSlideAction( + // caption: '', + // iconWidget: Padding( + // padding: const EdgeInsets.only(top: 10.0), + // child: Text( + // 'Edit', + // ), + // ), + // onTap: () { + // SetupRoutes.push(context, Routes.ADD_CUSTOM_FIELD, + // arguments: { + // 'onSave': (BasicData data, int index) { + // List? customFields = + // Provider.of(context, listen: false) + // .user()! + // .customFields[widget.category.name]; + // if (index > -1) { + // setState(() { + // customFields![index] = data; + // }); + // } else { + // customFields!.add(data); + // } + // }, + // 'basicData': basicData, + // 'isEdit': true, + // 'category': widget.category + // }); + // }, + // ), + // IconSlideAction( + // caption: '', + // color: ColorConstants.red, + // iconWidget: Padding( + // padding: const EdgeInsets.only(top: 10.0), + // child: Text( + // 'Delete', + // style: TextStyle(color: Colors.white), + // ), + // ), + // onTap: () { + // if (!isCustomField) { + // updateDefinedFields( + // BasicData(accountName: basicData.accountName)); + // } + // List? customFields = + // Provider.of(context, listen: false) + // .user()! + // .customFields[widget.category.name]; + + // var index = customFields!.indexOf(basicData); + // customFields[index] = BasicData( + // accountName: + // customFields[index].accountName! + AtText.IS_DELETED, + // isPrivate: customFields[index].isPrivate); + // setState(() {}); + // }, + // ), + + // ] + // : null, + ), child: Padding( padding: const EdgeInsets.only(right: 8.0), child: Row( diff --git a/lib/screens/location/location_widget.dart b/lib/screens/location/location_widget.dart index 7338ee93..a4d1cbfa 100644 --- a/lib/screens/location/location_widget.dart +++ b/lib/screens/location/location_widget.dart @@ -538,22 +538,25 @@ class _LocationWidgetState extends State { setState(() {}); }, child: Slidable( - actionPane: SlidableDrawerActionPane(), - actionExtentRatio: 0.15, - secondaryActions: [ - IconSlideAction( - caption: '', - color: _themeData!.scaffoldBackgroundColor, - icon: Icons.delete, - onTap: () { - _deleteKey(Provider.of( - context, - listen: false) - .user()! - .customFields['LOCATION']![index]); - }, - ), - ], + endActionPane: ActionPane( + motion: ScrollMotion(), + extentRatio: 0.15, + children: [ + SlidableAction( + label: '', + backgroundColor: + _themeData!.scaffoldBackgroundColor, + icon: Icons.delete, + onPressed: (context) { + _deleteKey(Provider.of( + context, + listen: false) + .user()! + .customFields['LOCATION']![index]); + }, + ), + ], + ), child: Row( mainAxisAlignment: MainAxisAlignment.spaceBetween, @@ -736,7 +739,9 @@ class _LocationWidgetState extends State { class LocationWidgetData { LocationWidgetData._(); + static final LocationWidgetData _instance = LocationWidgetData._(); + factory LocationWidgetData() => _instance; ValueNotifier? osmLocationModelNotifier; diff --git a/lib/screens/qr_screen.dart b/lib/screens/qr_screen.dart index eeb43ec6..47a72596 100644 --- a/lib/screens/qr_screen.dart +++ b/lib/screens/qr_screen.dart @@ -8,7 +8,9 @@ import '../utils/text_styles.dart'; class QrScreen extends StatefulWidget { QrScreen({required this.atSign}); + String atSign; + @override State createState() => _QrScreenState(); } @@ -79,12 +81,13 @@ class _QrScreenState extends State { SizedBox( height: 30, ), - QrImage( + QrImageView( data: widget.atSign, size: 180, - foregroundColor: _themeData!.brightness == Brightness.dark - ? Colors.white - : Colors.black, + eyeStyle: QrEyeStyle( + color: _themeData!.brightness == Brightness.dark + ? Colors.white + : Colors.black), ), SizedBox( height: 30, @@ -149,8 +152,9 @@ class _QrScreenState extends State { ), ElevatedButton( style: ElevatedButton.styleFrom( - textStyle: const TextStyle(fontSize: 20), - primary: _highlightColor), + textStyle: const TextStyle(fontSize: 20), + backgroundColor: _highlightColor, + ), onPressed: () { // print(_commentController.text.length); Share.share("https://wavi.ng/" + widget.atSign.toString(), diff --git a/lib/services/image_picker.dart b/lib/services/image_picker.dart index a8a7b564..8d5a8cb8 100644 --- a/lib/services/image_picker.dart +++ b/lib/services/image_picker.dart @@ -10,7 +10,9 @@ import 'package:image_cropper/image_cropper.dart'; class ImagePicker { ImagePicker._(); + static final ImagePicker _instance = ImagePicker._(); + factory ImagePicker() => _instance; Future pickImage() async { @@ -24,17 +26,20 @@ class ImagePicker { // var file = File(path); var _cropped = await ImageCropper().cropImage( - sourcePath: pickedFile.path!, - aspectRatio: CropAspectRatio(ratioX: 1, ratioY: 1), - compressQuality: 100, - maxHeight: 700, - maxWidth: 700, - compressFormat: ImageCompressFormat.jpg, - androidUiSettings: AndroidUiSettings( + sourcePath: pickedFile.path!, + aspectRatio: CropAspectRatio(ratioX: 1, ratioY: 1), + compressQuality: 100, + maxHeight: 700, + maxWidth: 700, + compressFormat: ImageCompressFormat.jpg, + uiSettings: [ + AndroidUiSettings( toolbarColor: AllColors().WHITE, toolbarTitle: 'Cropper', statusBarColor: AllColors().DARK_GREY, - backgroundColor: AllColors().WHITE)); + backgroundColor: AllColors().WHITE), + ], + ); if (_cropped == null) { return null; diff --git a/macos/Flutter/GeneratedPluginRegistrant.swift b/macos/Flutter/GeneratedPluginRegistrant.swift index aaf77ac8..97a3dd4a 100644 --- a/macos/Flutter/GeneratedPluginRegistrant.swift +++ b/macos/Flutter/GeneratedPluginRegistrant.swift @@ -11,16 +11,18 @@ import biometric_storage import desktop_window import device_info_plus import file_selector_macos +import flutter_image_compress_macos import flutter_local_notifications import geolocator_apple import just_audio -import package_info_plus_macos -import path_provider_macos -import share_plus_macos -import shared_preferences_macos +import package_info_plus +import path_provider_foundation +import share_plus +import shared_preferences_foundation import sqflite import url_launcher_macos -import wakelock_macos +import video_player_avfoundation +import wakelock_plus func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { FileSaverPlugin.register(with: registry.registrar(forPlugin: "FileSaverPlugin")) @@ -29,14 +31,16 @@ func RegisterGeneratedPlugins(registry: FlutterPluginRegistry) { DesktopWindowPlugin.register(with: registry.registrar(forPlugin: "DesktopWindowPlugin")) DeviceInfoPlusMacosPlugin.register(with: registry.registrar(forPlugin: "DeviceInfoPlusMacosPlugin")) FileSelectorPlugin.register(with: registry.registrar(forPlugin: "FileSelectorPlugin")) + FlutterImageCompressMacosPlugin.register(with: registry.registrar(forPlugin: "FlutterImageCompressMacosPlugin")) FlutterLocalNotificationsPlugin.register(with: registry.registrar(forPlugin: "FlutterLocalNotificationsPlugin")) GeolocatorPlugin.register(with: registry.registrar(forPlugin: "GeolocatorPlugin")) JustAudioPlugin.register(with: registry.registrar(forPlugin: "JustAudioPlugin")) - FLTPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FLTPackageInfoPlusPlugin")) + FPPPackageInfoPlusPlugin.register(with: registry.registrar(forPlugin: "FPPPackageInfoPlusPlugin")) PathProviderPlugin.register(with: registry.registrar(forPlugin: "PathProviderPlugin")) SharePlusMacosPlugin.register(with: registry.registrar(forPlugin: "SharePlusMacosPlugin")) SharedPreferencesPlugin.register(with: registry.registrar(forPlugin: "SharedPreferencesPlugin")) SqflitePlugin.register(with: registry.registrar(forPlugin: "SqflitePlugin")) UrlLauncherPlugin.register(with: registry.registrar(forPlugin: "UrlLauncherPlugin")) - WakelockMacosPlugin.register(with: registry.registrar(forPlugin: "WakelockMacosPlugin")) + FVPVideoPlayerPlugin.register(with: registry.registrar(forPlugin: "FVPVideoPlayerPlugin")) + WakelockPlusMacosPlugin.register(with: registry.registrar(forPlugin: "WakelockPlusMacosPlugin")) } diff --git a/macos/Podfile b/macos/Podfile index 9aa0e324..a8348307 100644 --- a/macos/Podfile +++ b/macos/Podfile @@ -37,7 +37,7 @@ post_install do |installer| installer.pods_project.targets.each do |target| flutter_additional_macos_build_settings(target) target.build_configurations.each do |bc| - bc.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '10.11' + bc.build_settings['MACOSX_DEPLOYMENT_TARGET'] = '10.14' end end end diff --git a/macos/Podfile.lock b/macos/Podfile.lock index bf1da41d..029a8786 100644 --- a/macos/Podfile.lock +++ b/macos/Podfile.lock @@ -11,30 +11,38 @@ PODS: - FlutterMacOS - file_selector_macos (0.0.1): - FlutterMacOS + - flutter_image_compress_macos (1.0.0): + - FlutterMacOS + - flutter_inappwebview_macos (0.0.1): + - FlutterMacOS + - OrderedSet (~> 5.0) - flutter_local_notifications (0.0.1): - FlutterMacOS - FlutterMacOS (1.0.0) - - FMDB (2.7.5): - - FMDB/standard (= 2.7.5) - - FMDB/standard (2.7.5) - geolocator_apple (1.2.0): - FlutterMacOS - just_audio (0.0.1): - FlutterMacOS - - package_info_plus_macos (0.0.1): + - OrderedSet (5.0.0) + - package_info_plus (0.0.1): - FlutterMacOS - - path_provider_macos (0.0.1): + - path_provider_foundation (0.0.1): + - Flutter - FlutterMacOS - - share_plus_macos (0.0.1): + - share_plus (0.0.1): - FlutterMacOS - - shared_preferences_macos (0.0.1): + - shared_preferences_foundation (0.0.1): + - Flutter - FlutterMacOS - - sqflite (0.0.2): + - sqflite (0.0.3): + - Flutter - FlutterMacOS - - FMDB (>= 2.7.5) - url_launcher_macos (0.0.1): - FlutterMacOS - - wakelock_macos (0.0.1): + - video_player_avfoundation (0.0.1): + - Flutter + - FlutterMacOS + - wakelock_plus (0.0.1): - FlutterMacOS DEPENDENCIES: @@ -44,21 +52,24 @@ DEPENDENCIES: - desktop_window (from `Flutter/ephemeral/.symlinks/plugins/desktop_window/macos`) - device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`) - file_selector_macos (from `Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos`) + - flutter_image_compress_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_image_compress_macos/macos`) + - flutter_inappwebview_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos`) - flutter_local_notifications (from `Flutter/ephemeral/.symlinks/plugins/flutter_local_notifications/macos`) - FlutterMacOS (from `Flutter/ephemeral`) - geolocator_apple (from `Flutter/ephemeral/.symlinks/plugins/geolocator_apple/macos`) - just_audio (from `Flutter/ephemeral/.symlinks/plugins/just_audio/macos`) - - package_info_plus_macos (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus_macos/macos`) - - path_provider_macos (from `Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos`) - - share_plus_macos (from `Flutter/ephemeral/.symlinks/plugins/share_plus_macos/macos`) - - shared_preferences_macos (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_macos/macos`) - - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/macos`) + - package_info_plus (from `Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos`) + - path_provider_foundation (from `Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin`) + - share_plus (from `Flutter/ephemeral/.symlinks/plugins/share_plus/macos`) + - shared_preferences_foundation (from `Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin`) + - sqflite (from `Flutter/ephemeral/.symlinks/plugins/sqflite/darwin`) - url_launcher_macos (from `Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos`) - - wakelock_macos (from `Flutter/ephemeral/.symlinks/plugins/wakelock_macos/macos`) + - video_player_avfoundation (from `Flutter/ephemeral/.symlinks/plugins/video_player_avfoundation/darwin`) + - wakelock_plus (from `Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos`) SPEC REPOS: trunk: - - FMDB + - OrderedSet EXTERNAL SOURCES: at_file_saver: @@ -73,6 +84,10 @@ EXTERNAL SOURCES: :path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos file_selector_macos: :path: Flutter/ephemeral/.symlinks/plugins/file_selector_macos/macos + flutter_image_compress_macos: + :path: Flutter/ephemeral/.symlinks/plugins/flutter_image_compress_macos/macos + flutter_inappwebview_macos: + :path: Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos flutter_local_notifications: :path: Flutter/ephemeral/.symlinks/plugins/flutter_local_notifications/macos FlutterMacOS: @@ -81,20 +96,22 @@ EXTERNAL SOURCES: :path: Flutter/ephemeral/.symlinks/plugins/geolocator_apple/macos just_audio: :path: Flutter/ephemeral/.symlinks/plugins/just_audio/macos - package_info_plus_macos: - :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus_macos/macos - path_provider_macos: - :path: Flutter/ephemeral/.symlinks/plugins/path_provider_macos/macos - share_plus_macos: - :path: Flutter/ephemeral/.symlinks/plugins/share_plus_macos/macos - shared_preferences_macos: - :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_macos/macos + package_info_plus: + :path: Flutter/ephemeral/.symlinks/plugins/package_info_plus/macos + path_provider_foundation: + :path: Flutter/ephemeral/.symlinks/plugins/path_provider_foundation/darwin + share_plus: + :path: Flutter/ephemeral/.symlinks/plugins/share_plus/macos + shared_preferences_foundation: + :path: Flutter/ephemeral/.symlinks/plugins/shared_preferences_foundation/darwin sqflite: - :path: Flutter/ephemeral/.symlinks/plugins/sqflite/macos + :path: Flutter/ephemeral/.symlinks/plugins/sqflite/darwin url_launcher_macos: :path: Flutter/ephemeral/.symlinks/plugins/url_launcher_macos/macos - wakelock_macos: - :path: Flutter/ephemeral/.symlinks/plugins/wakelock_macos/macos + video_player_avfoundation: + :path: Flutter/ephemeral/.symlinks/plugins/video_player_avfoundation/darwin + wakelock_plus: + :path: Flutter/ephemeral/.symlinks/plugins/wakelock_plus/macos SPEC CHECKSUMS: at_file_saver: 1fc6ed722f17c7a20ce79cce168d1100fcad4b95 @@ -102,20 +119,23 @@ SPEC CHECKSUMS: biometric_storage: 43caa6e7ef00e8e19c074216e7e1786dacda9e76 desktop_window: fb7c4f12c1129f947ac482296b6f14059d57a3c3 device_info_plus: 5401765fde0b8d062a2f8eb65510fb17e77cf07f - file_selector_macos: f1b08a781e66103e3ba279fd5d4024a2478b3af6 + file_selector_macos: 468fb6b81fac7c0e88d71317f3eec34c3b008ff9 + flutter_image_compress_macos: c26c3c13ea0f28ae6dea4e139b3292e7729f99f1 + flutter_inappwebview_macos: 9600c9df9fdb346aaa8933812009f8d94304203d flutter_local_notifications: 3805ca215b2fb7f397d78b66db91f6a747af52e4 FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24 - FMDB: 2ce00b547f966261cd18927a3ddb07cb6f3db82a geolocator_apple: 72a78ae3f3e4ec0db62117bd93e34523f5011d58 just_audio: 9b67ca7b97c61cfc9784ea23cd8cc55eb226d489 - package_info_plus_macos: f010621b07802a241d96d01876d6705f15e77c1c - path_provider_macos: 3c0c3b4b0d4a76d2bf989a913c2de869c5641a19 - share_plus_macos: 853ee48e7dce06b633998ca0735d482dd671ade4 - shared_preferences_macos: a64dc611287ed6cbe28fd1297898db1336975727 - sqflite: a5789cceda41d54d23f31d6de539d65bb14100ea - url_launcher_macos: 597e05b8e514239626bcf4a850fcf9ef5c856ec3 - wakelock_macos: bc3f2a9bd8d2e6c89fee1e1822e7ddac3bd004a9 + OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c + package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce + path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c + share_plus: 76dd39142738f7a68dd57b05093b5e8193f220f7 + shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695 + sqflite: 673a0e54cc04b7d6dba8d24fb8095b31c3a99eec + url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95 + video_player_avfoundation: 02011213dab73ae3687df27ce441fbbcc82b5579 + wakelock_plus: 4783562c9a43d209c458cb9b30692134af456269 -PODFILE CHECKSUM: 27e1a4b6a6c5c9c3ab843716d2bb5ab62b3ce02f +PODFILE CHECKSUM: 697d8fd31026747684ea7db1d7c1ade590f42ae6 -COCOAPODS: 1.11.3 +COCOAPODS: 1.15.2 diff --git a/macos/Runner.xcodeproj/project.pbxproj b/macos/Runner.xcodeproj/project.pbxproj index b29d5ac3..2f236ddc 100644 --- a/macos/Runner.xcodeproj/project.pbxproj +++ b/macos/Runner.xcodeproj/project.pbxproj @@ -202,7 +202,7 @@ isa = PBXProject; attributes = { LastSwiftUpdateCheck = 0920; - LastUpgradeCheck = 1300; + LastUpgradeCheck = 1510; ORGANIZATIONNAME = ""; TargetAttributes = { 33CC10EC2044A3C60003C045 = { diff --git a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme index dbef2a9d..104a9fe2 100644 --- a/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme +++ b/macos/Runner.xcodeproj/xcshareddata/xcschemes/Runner.xcscheme @@ -1,6 +1,6 @@ =2.19.0 <3.0.0" - flutter: ">=3.7.0" + dart: ">=3.3.0 <4.0.0" + flutter: ">=3.19.0" diff --git a/pubspec.yaml b/pubspec.yaml index 91cdecc3..9db9c7b5 100644 --- a/pubspec.yaml +++ b/pubspec.yaml @@ -30,73 +30,63 @@ dependencies: flutter: sdk: flutter - biometric_storage: ^4.1.3 + biometric_storage: ^5.0.1 - flutter_slidable: ^0.6.0 - provider: ^6.0.2 - flutter_image_compress: ^1.1.0 - path_provider: ^2.0.9 - permission_handler: ^9.2.0 + flutter_slidable: ^3.0.1 + provider: ^6.1.2 + flutter_image_compress: ^2.1.0 + path_provider: ^2.1.2 + permission_handler: ^11.3.0 at_base2e15: ^1.0.0 - youtube_player_flutter: ^8.0.0 - receive_sharing_intent: ^1.4.5 + youtube_player_flutter: ^8.1.2 + receive_sharing_intent: 1.5.4 http: ^0.13.4 file_picker: ^4.5.0 - easy_debounce: ^2.0.2+1 + easy_debounce: ^2.0.3 validators: ^3.0.0 - latlong2: ^0.8.1 - image_cropper: ^1.5.0 - extended_image: ^8.0.2 - image: ^3.1.1 - showcaseview: ^1.1.1 + latlong2: ^0.9.0 + image_cropper: ^5.0.1 + extended_image: ^8.2.0 + image: ^4.1.7 + showcaseview: ^2.0.3 desktop_window: ^0.4.0 - shared_preferences: ^2.0.7 + shared_preferences: ^2.2.2 html_editor_enhanced: ^2.5.1 - flutter_widget_from_html: ^0.8.5 - qr_flutter: ^4.0.0 - share_plus: ^4.5.3 - url_launcher: ^6.0.20 - - at_common_flutter: ^2.0.11 - at_onboarding_flutter: ^6.0.3 - at_client_mobile: ^3.2.9 - at_contact: ^3.0.7 - at_lookup: ^3.0.35 - at_contacts_flutter: ^4.0.9 - at_commons: ^3.0.43 - at_follows_flutter: ^3.0.9 - at_location_flutter: ^3.1.8 - at_sync_ui_flutter: ^1.0.8 + flutter_widget_from_html: ^0.14.11 + qr_flutter: ^4.1.0 + share_plus: ^7.2.2 + url_launcher: ^6.2.5 + + at_common_flutter: ^2.0.13 + at_onboarding_flutter: ^6.1.7 + at_client_mobile: ^3.2.15 + at_contact: ^3.0.8 + at_lookup: ^3.0.46 + at_contacts_flutter: ^4.0.14 + at_commons: ^4.0.3 + at_follows_flutter: ^3.0.12 + at_location_flutter: ^3.1.12 + at_sync_ui_flutter: ^1.0.11 uni_links: ^0.5.1 internet_connection_checker: ^1.0.0+1 - at_server_status: ^1.0.3 - flutter_dotenv: ^5.0.2 + at_server_status: ^1.0.4 + flutter_dotenv: ^5.1.0 - new_version: ^0.3.0 - another_flushbar: ^1.10.28 + new_version: ^0.3.1 + another_flushbar: ^1.12.30 dependency_overrides: - fwfh_text_style: ^2.22.8+1 - flutter_local_notifications: 9.7.1 - permission_handler: ^10.2.0 - flutter_inappwebview: 5.4.4+3 - file_picker: ^5.2.5 - webview_flutter: ^4.0.1 - fwfh_webview: 0.7.0 - geolocator: ^9.0.2 - path: ^1.8.3 - numberpicker: ^2.1.2 - # at_onboarding_flutter: - # git: - # url: https://github.com/atsign-foundation/at_widgets.git - # path: packages/at_onboarding_flutter - # ref: trunk + http: ^1.2.1 + package_info_plus: ^5.0.0 + web: ^0.5.0 + file_picker: ^6.1.1 + flutter_inappwebview: ^5.8.0 dev_dependencies: flutter_test: sdk: flutter - msix: ^3.3.1 + msix: ^3.16.7 # For information on the generic Dart part of this file, see the # following page: https://dart.dev/tools/pub/pubspec diff --git a/windows/flutter/CMakeLists.txt b/windows/flutter/CMakeLists.txt index d4b57706..e7107414 100644 --- a/windows/flutter/CMakeLists.txt +++ b/windows/flutter/CMakeLists.txt @@ -9,6 +9,11 @@ include(${EPHEMERAL_DIR}/generated_config.cmake) # https://github.com/flutter/flutter/issues/57146. set(WRAPPER_ROOT "${EPHEMERAL_DIR}/cpp_client_wrapper") +# Set fallback configurations for older versions of the flutter tool. +if (NOT DEFINED FLUTTER_TARGET_PLATFORM) + set(FLUTTER_TARGET_PLATFORM "windows-x64") +endif() + # === Flutter Library === set(FLUTTER_LIBRARY "${EPHEMERAL_DIR}/flutter_windows.dll") @@ -91,7 +96,7 @@ add_custom_command( COMMAND ${CMAKE_COMMAND} -E env ${FLUTTER_TOOL_ENVIRONMENT} "${FLUTTER_ROOT}/packages/flutter_tools/bin/tool_backend.bat" - windows-x64 $ + ${FLUTTER_TARGET_PLATFORM} $ VERBATIM ) add_custom_target(flutter_assemble DEPENDS diff --git a/windows/flutter/generated_plugin_registrant.cc b/windows/flutter/generated_plugin_registrant.cc index f5a73199..603253dc 100644 --- a/windows/flutter/generated_plugin_registrant.cc +++ b/windows/flutter/generated_plugin_registrant.cc @@ -11,6 +11,7 @@ #include #include #include +#include #include void RegisterPlugins(flutter::PluginRegistry* registry) { @@ -24,6 +25,8 @@ void RegisterPlugins(flutter::PluginRegistry* registry) { registry->GetRegistrarForPlugin("GeolocatorWindows")); PermissionHandlerWindowsPluginRegisterWithRegistrar( registry->GetRegistrarForPlugin("PermissionHandlerWindowsPlugin")); + SharePlusWindowsPluginCApiRegisterWithRegistrar( + registry->GetRegistrarForPlugin("SharePlusWindowsPluginCApi")); UrlLauncherWindowsRegisterWithRegistrar( registry->GetRegistrarForPlugin("UrlLauncherWindows")); } diff --git a/windows/flutter/generated_plugins.cmake b/windows/flutter/generated_plugins.cmake index 4d38c0c6..2b49a353 100644 --- a/windows/flutter/generated_plugins.cmake +++ b/windows/flutter/generated_plugins.cmake @@ -8,6 +8,7 @@ list(APPEND FLUTTER_PLUGIN_LIST file_selector_windows geolocator_windows permission_handler_windows + share_plus url_launcher_windows ) diff --git a/windows/runner/Runner.rc b/windows/runner/Runner.rc index ea6cdd33..01b7534e 100644 --- a/windows/runner/Runner.rc +++ b/windows/runner/Runner.rc @@ -60,14 +60,14 @@ IDI_APP_ICON ICON "resources\\app_icon.ico" // Version // -#ifdef FLUTTER_BUILD_NUMBER -#define VERSION_AS_NUMBER FLUTTER_BUILD_NUMBER +#if defined(FLUTTER_VERSION_MAJOR) && defined(FLUTTER_VERSION_MINOR) && defined(FLUTTER_VERSION_PATCH) && defined(FLUTTER_VERSION_BUILD) +#define VERSION_AS_NUMBER FLUTTER_VERSION_MAJOR,FLUTTER_VERSION_MINOR,FLUTTER_VERSION_PATCH,FLUTTER_VERSION_BUILD #else -#define VERSION_AS_NUMBER 1,0,0 +#define VERSION_AS_NUMBER 1,0,0,0 #endif -#ifdef FLUTTER_BUILD_NAME -#define VERSION_AS_STRING #FLUTTER_BUILD_NAME +#if defined(FLUTTER_VERSION) +#define VERSION_AS_STRING FLUTTER_VERSION #else #define VERSION_AS_STRING "1.0.0" #endif