v4.13.0 and v1.10.0 (#1265)

* New versions * Minor fix [skip ci] * Minor UI enhancement for balance card * Minor UI enhancement * Add Monero build configs for MacOS [skip ci] * Add rest of Macos Configs [skip ci] * Delete empty file Save and report restore from backup exceptions [skip ci] * Minor fixes

Omar Hatem committed Jan 16, 2024 at 02:02 UTC d8f1cdc7ef06dd1cc70ecf0176902109929345ed
33 files changed +155 -56
.gitignore
+9
@@ -147,3 +147,12 @@ assets/images/app_logo.png
147 macos/Runner/Info.plist
148 macos/Runner/DebugProfile.entitlements
149 macos/Runner/Release.entitlements
150 +
151 +macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_16.png
152 +macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_32.png
153 +macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_64.png
154 +macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_128.png
155 +macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_256.png
156 +macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_512.png
157 +macos/Runner/Assets.xcassets/AppIcon.appiconset/app_icon_1024.png
158 +macos/Runner/Configs/AppInfo.xcconfig
assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_1024.png renamed
assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_128.png renamed
assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_16.png renamed
assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_256.png renamed
assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_32.png renamed
assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_512.png renamed
assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_64.png renamed
assets/images/macos_icons/monero_macos_icons/monero_macos_1024.png
Binary files /dev/null and b/assets/images/macos_icons/monero_macos_icons/monero_macos_1024.png differ
assets/images/macos_icons/monero_macos_icons/monero_macos_128.png
Binary files /dev/null and b/assets/images/macos_icons/monero_macos_icons/monero_macos_128.png differ
assets/images/macos_icons/monero_macos_icons/monero_macos_16.png
Binary files /dev/null and b/assets/images/macos_icons/monero_macos_icons/monero_macos_16.png differ
assets/images/macos_icons/monero_macos_icons/monero_macos_256.png
Binary files /dev/null and b/assets/images/macos_icons/monero_macos_icons/monero_macos_256.png differ
assets/images/macos_icons/monero_macos_icons/monero_macos_32.png
Binary files /dev/null and b/assets/images/macos_icons/monero_macos_icons/monero_macos_32.png differ
assets/images/macos_icons/monero_macos_icons/monero_macos_512.png
Binary files /dev/null and b/assets/images/macos_icons/monero_macos_icons/monero_macos_512.png differ
assets/images/macos_icons/monero_macos_icons/monero_macos_64.png
Binary files /dev/null and b/assets/images/macos_icons/monero_macos_icons/monero_macos_64.png differ
assets/text/Monerocom_Release_Notes.txt
+3 -4
@@ -1,4 +1,3 @@
1 -Polyseed enhancements
2 -New on-ramp provider DFX
3 -Usability enhancements
4 -Bug fixes
\ No newline at end of file
1 +On-ramp flow fixes and enhancements
2 +UI enhancements
3 +Generic enhancements and bug fixes
\ No newline at end of file
assets/text/Release_Notes.txt
+6 -2
@@ -1,2 +1,6 @@
1 -Support multiple address types for Bitcoin Cash
2 -Bug fixes
\ No newline at end of file
1 +Add new Off-ramp providers (DFX, OnRamper)
2 +On-ramp flow fixes and enhancements
3 +Ethereum and WalletConnect fixes and improvements
4 +Nano enhancements
5 +UI enhancements
6 +Generic enhancements and bug fixes
\ No newline at end of file
cw_nano/pubspec.lock
+9 -9
@@ -471,6 +471,15 @@ packages:
471 url: "https://pub.dev"
472 source: hosted
473 version: "2.0.0"
474 + nanoutil:
475 + dependency: "direct main"
476 + description:
477 + path: "."
478 + ref: c37e72817cf0a28162f43124f79661d6c8e0098f
479 + resolved-ref: c37e72817cf0a28162f43124f79661d6c8e0098f
480 + url: "https://github.com/perishllc/nanoutil.git"
481 + source: git
482 + version: "1.0.0"
483 package_config:
484 dependency: transitive
485 description:
@@ -764,15 +773,6 @@ packages:
773 url: "https://pub.dev"
774 source: hosted
775 version: "1.0.1"
767 - tor:
768 - dependency: transitive
769 - description:
770 - path: "."
771 - ref: main
772 - resolved-ref: "09ba92cb11d4e3cacf97256e57863b805f79f2e5"
773 - url: "https://github.com/cake-tech/tor.git"
774 - source: git
775 - version: "0.0.1"
776 typed_data:
777 dependency: transitive
778 description:
cw_polygon/lib/polygon_wallet.dart
+6 -2
@@ -102,8 +102,12 @@ abstract class PolygonWalletBase
102 final Completer<SharedPreferences> _sharedPrefs = Completer();
103
104 Future<void> init() async {
105 - polygonErc20TokensBox = await CakeHive.openBox<Erc20Token>(
106 - "${walletInfo.name.replaceAll(" ", "_")}_${Erc20Token.polygonBoxName}");
105 + final boxName = "${walletInfo.name.replaceAll(" ", "_")}_ ${Erc20Token.polygonBoxName}";
106 + if (await CakeHive.boxExists(boxName)) {
107 + polygonErc20TokensBox = await CakeHive.openBox<Erc20Token>(boxName);
108 + } else {
109 + polygonErc20TokensBox = await CakeHive.openBox<Erc20Token>(boxName.replaceAll(" ", ""));
110 + }
111 await walletAddresses.init();
112 await transactionHistory.init();
113 _polygonPrivateKey = await getPrivateKey(
ios/Podfile.lock
+11 -11
@@ -102,11 +102,11 @@ PODS:
102 - DKImagePickerController/PhotoGallery
103 - Flutter
104 - Flutter (1.0.0)
105 - - flutter_inappwebview (0.0.1):
105 + - flutter_inappwebview_ios (0.0.1):
106 - Flutter
107 - - flutter_inappwebview/Core (= 0.0.1)
107 + - flutter_inappwebview_ios/Core (= 0.0.1)
108 - OrderedSet (~> 5.0)
109 - - flutter_inappwebview/Core (0.0.1):
109 + - flutter_inappwebview_ios/Core (0.0.1):
110 - Flutter
111 - OrderedSet (~> 5.0)
112 - flutter_mailer (0.0.1):
@@ -169,7 +169,7 @@ DEPENDENCIES:
169 - devicelocale (from `.symlinks/plugins/devicelocale/ios`)
170 - file_picker (from `.symlinks/plugins/file_picker/ios`)
171 - Flutter (from `Flutter`)
172 - - flutter_inappwebview (from `.symlinks/plugins/flutter_inappwebview/ios`)
172 + - flutter_inappwebview_ios (from `.symlinks/plugins/flutter_inappwebview_ios/ios`)
173 - flutter_mailer (from `.symlinks/plugins/flutter_mailer/ios`)
174 - flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`)
175 - fluttertoast (from `.symlinks/plugins/fluttertoast/ios`)
@@ -224,8 +224,8 @@ EXTERNAL SOURCES:
224 :path: ".symlinks/plugins/file_picker/ios"
225 Flutter:
226 :path: Flutter
227 - flutter_inappwebview:
228 - :path: ".symlinks/plugins/flutter_inappwebview/ios"
227 + flutter_inappwebview_ios:
228 + :path: ".symlinks/plugins/flutter_inappwebview_ios/ios"
229 flutter_mailer:
230 :path: ".symlinks/plugins/flutter_mailer/ios"
231 flutter_secure_storage:
@@ -274,29 +274,29 @@ SPEC CHECKSUMS:
274 DKPhotoGallery: fdfad5125a9fdda9cc57df834d49df790dbb4179
275 file_picker: 15fd9539e4eb735dc54bae8c0534a7a9511a03de
276 Flutter: f04841e97a9d0b0a8025694d0796dd46242b2854
277 - flutter_inappwebview: 3d32228f1304635e7c028b0d4252937730bbc6cf
277 + flutter_inappwebview_ios: 97215cf7d4677db55df76782dbd2930c5e1c1ea0
278 flutter_mailer: 2ef5a67087bc8c6c4cefd04a178bf1ae2c94cd83
279 flutter_secure_storage: 23fc622d89d073675f2eaa109381aefbcf5a49be
280 fluttertoast: eb263d302cc92e04176c053d2385237e9f43fad0
281 in_app_review: 318597b3a06c22bb46dc454d56828c85f444f99d
282 - local_auth_ios: c6cf091ded637a88f24f86a8875d8b0f526e2605
282 + local_auth_ios: 1ba1475238daa33a6ffa2a29242558437be435ac
283 MTBBarcodeScanner: f453b33c4b7dfe545d8c6484ed744d55671788cb
284 OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c
285 package_info: 873975fc26034f0b863a300ad47e7f1ac6c7ec62
286 package_info_plus: 115f4ad11e0698c8c1c5d8a689390df880f47e85
287 - path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
287 + path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c
288 permission_handler_apple: e76247795d700c14ea09e3a2d8855d41ee80a2e6
289 ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
290 SDWebImage: 2aea163b50bfcb569a2726b6a754c54a4506fcf6
291 sensitive_clipboard: d4866e5d176581536c27bb1618642ee83adca986
292 share_plus: 056a1e8ac890df3e33cb503afffaf1e9b4fbae68
293 - shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
293 + shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695
294 SwiftProtobuf: 40bd808372cb8706108f22d28f8ab4a6b9bc6989
295 SwiftyGif: 93a1cc87bf3a51916001cf8f3d63835fb64c819f
296 Toast: 91b396c56ee72a5790816f40d3a94dd357abc196
297 uni_links: d97da20c7701486ba192624d99bffaaffcfc298a
298 UnstoppableDomainsResolution: c3c67f4d0a5e2437cb00d4bd50c2e00d6e743841
299 - url_launcher_ios: bf5ce03e0e2088bad9cc378ea97fa0ed5b49673b
299 + url_launcher_ios: bbd758c6e7f9fd7b5b1d4cde34d2b95fcce5e812
300 wakelock_plus: 8b09852c8876491e4b6d179e17dfe2a0b5f60d47
301 workmanager: 0afdcf5628bbde6924c21af7836fed07b42e30e6
302
lib/entities/provider_types.dart
+1 -2
@@ -74,8 +74,6 @@ class ProvidersHelper {
74
75 static List<ProviderType> getAvailableSellProviderTypes(WalletType walletType) {
76 switch (walletType) {
77 - case WalletType.monero:
78 - return [ProviderType.askEachTime, ProviderType.dfx];
77 case WalletType.bitcoin:
78 case WalletType.ethereum:
79 return [ProviderType.askEachTime, ProviderType.onramper,
@@ -83,6 +81,7 @@ class ProvidersHelper {
81 case WalletType.litecoin:
82 case WalletType.bitcoinCash:
83 return [ProviderType.askEachTime, ProviderType.moonpaySell];
84 + case WalletType.monero:
85 case WalletType.nano:
86 case WalletType.banano:
87 case WalletType.none:
lib/src/screens/dashboard/desktop_widgets/desktop_wallet_selection_dropdown.dart
+2 -2
@@ -123,8 +123,8 @@ class _DesktopWalletSelectionDropDownState extends State<DesktopWalletSelectionD
123 alertContent: S.of(context).change_wallet_alert_content(selectedWallet.name),
124 leftButtonText: S.of(context).cancel,
125 rightButtonText: S.of(context).change,
126 - actionLeftButton: () => Navigator.of(context).pop(false),
127 - actionRightButton: () => Navigator.of(context).pop(true));
126 + actionLeftButton: () => Navigator.of(dialogContext).pop(false),
127 + actionRightButton: () => Navigator.of(dialogContext).pop(true));
128 }) ??
129 false;
130
lib/src/screens/dashboard/pages/balance_page.dart
+5 -5
@@ -265,7 +265,7 @@ class BalanceRowWidget extends StatelessWidget {
265 color: Theme.of(context).extension<SyncIndicatorTheme>()!.syncedBackgroundColor,
266 ),
267 child: Container(
268 - margin: const EdgeInsets.only(top: 16, left: 24, right: 24, bottom: 24),
268 + margin: const EdgeInsets.only(top: 16, left: 24, right: 8, bottom: 16),
269 child: Column(
270 crossAxisAlignment: CrossAxisAlignment.start,
271 children: [
@@ -329,7 +329,7 @@ class BalanceRowWidget extends StatelessWidget {
329 ),
330 ),
331 SizedBox(
332 - width: MediaQuery.of(context).size.width * 0.18,
332 + width: min(MediaQuery.of(context).size.width * 0.2, 100),
333 child: Center(
334 child: Column(
335 children: [
@@ -337,8 +337,8 @@ class BalanceRowWidget extends StatelessWidget {
337 ? Container(
338 child: Image.asset(
339 currency.iconPath!,
340 - height: 30.0,
341 - width: 30.0,
340 + height: 40.0,
341 + width: 40.0,
342 ),
343 )
344 : Container(
@@ -359,7 +359,7 @@ class BalanceRowWidget extends StatelessWidget {
359 Text(
360 currency.title,
361 style: TextStyle(
362 - fontSize: 18,
362 + fontSize: 15,
363 fontFamily: 'Lato',
364 fontWeight: FontWeight.w800,
365 color: Theme.of(context).extension<BalancePageTheme>()!.assetTitleColor,
lib/src/screens/restore/widgets/backup_file_button.dart
lib/view_model/restore_from_backup_view_model.dart
+9 -1
@@ -1,5 +1,7 @@
1 import 'dart:io';
2 import 'package:cake_wallet/core/execution_state.dart';
3 +import 'package:cake_wallet/utils/exception_handler.dart';
4 +import 'package:flutter/material.dart';
5 import 'package:hive/hive.dart';
6 import 'package:mobx/mobx.dart';
7 import 'package:cake_wallet/main.dart';
@@ -60,11 +62,17 @@ abstract class RestoreFromBackupViewModelBase with Store {
62 });
63
64 state = ExecutedSuccessfullyState();
63 - } catch (e) {
65 + } catch (e, s) {
66 var msg = e.toString();
67
68 if (msg.toLowerCase().contains("message authentication code (mac)")) {
69 msg = 'Incorrect backup password';
70 + } else {
71 + ExceptionHandler.onError(FlutterErrorDetails(
72 + exception: e,
73 + stack: s,
74 + library: this.toString(),
75 + ));
76 }
77
78 state = FailureState(msg);
macos/Podfile.lock
+12 -2
@@ -23,11 +23,15 @@ PODS:
23 - FlutterMacOS
24 - devicelocale (0.0.1):
25 - FlutterMacOS
26 + - flutter_inappwebview_macos (0.0.1):
27 + - FlutterMacOS
28 + - OrderedSet (~> 5.0)
29 - flutter_secure_storage_macos (6.1.1):
30 - FlutterMacOS
31 - FlutterMacOS (1.0.0)
32 - in_app_review (0.2.0):
33 - FlutterMacOS
34 + - OrderedSet (5.0.0)
35 - package_info (0.0.1):
36 - FlutterMacOS
37 - package_info_plus (0.0.1):
@@ -51,6 +55,7 @@ DEPENDENCIES:
55 - cw_monero (from `Flutter/ephemeral/.symlinks/plugins/cw_monero/macos`)
56 - device_info_plus (from `Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos`)
57 - devicelocale (from `Flutter/ephemeral/.symlinks/plugins/devicelocale/macos`)
58 + - flutter_inappwebview_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos`)
59 - flutter_secure_storage_macos (from `Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos`)
60 - FlutterMacOS (from `Flutter/ephemeral`)
61 - in_app_review (from `Flutter/ephemeral/.symlinks/plugins/in_app_review/macos`)
@@ -64,6 +69,7 @@ DEPENDENCIES:
69
70 SPEC REPOS:
71 trunk:
72 + - OrderedSet
73 - ReachabilitySwift
74
75 EXTERNAL SOURCES:
@@ -75,6 +81,8 @@ EXTERNAL SOURCES:
81 :path: Flutter/ephemeral/.symlinks/plugins/device_info_plus/macos
82 devicelocale:
83 :path: Flutter/ephemeral/.symlinks/plugins/devicelocale/macos
84 + flutter_inappwebview_macos:
85 + :path: Flutter/ephemeral/.symlinks/plugins/flutter_inappwebview_macos/macos
86 flutter_secure_storage_macos:
87 :path: Flutter/ephemeral/.symlinks/plugins/flutter_secure_storage_macos/macos
88 FlutterMacOS:
@@ -101,15 +109,17 @@ SPEC CHECKSUMS:
109 cw_monero: ec03de55a19c4a2b174ea687e0f4202edc716fa4
110 device_info_plus: 5401765fde0b8d062a2f8eb65510fb17e77cf07f
111 devicelocale: 9f0f36ac651cabae2c33f32dcff4f32b61c38225
112 + flutter_inappwebview_macos: 9600c9df9fdb346aaa8933812009f8d94304203d
113 flutter_secure_storage_macos: d56e2d218c1130b262bef8b4a7d64f88d7f9c9ea
114 FlutterMacOS: 8f6f14fa908a6fb3fba0cd85dbd81ec4b251fb24
115 in_app_review: a850789fad746e89bce03d4aeee8078b45a53fd0
116 + OrderedSet: aaeb196f7fef5a9edf55d89760da9176ad40b93c
117 package_info: 6eba2fd8d3371dda2d85c8db6fe97488f24b74b2
118 package_info_plus: 02d7a575e80f194102bef286361c6c326e4c29ce
109 - path_provider_foundation: 29f094ae23ebbca9d3d0cec13889cd9060c0e943
119 + path_provider_foundation: 3784922295ac71e43754bd15e0653ccfd36a147c
120 ReachabilitySwift: 985039c6f7b23a1da463388634119492ff86c825
121 share_plus_macos: 853ee48e7dce06b633998ca0735d482dd671ade4
112 - shared_preferences_foundation: 5b919d13b803cadd15ed2dc053125c68730e5126
122 + shared_preferences_foundation: b4c3b4cddf1c21f02770737f147a3f5da9d39695
123 url_launcher_macos: d2691c7dd33ed713bf3544850a623080ec693d95
124 wakelock_plus: 4783562c9a43d209c458cb9b30692134af456269
125
macos/Runner/Configs/AppInfoBase.xcconfig renamed
+2 -2
@@ -5,10 +5,10 @@
5 // 'flutter create' template.
6
7 // The application's name. By default this is also the title of the Flutter window.
8 -PRODUCT_NAME = Cake Wallet
8 +PRODUCT_NAME = ${PRODUCT_NAME}
9
10 // The application's bundle identifier
11 -PRODUCT_BUNDLE_IDENTIFIER = com.fotolockr.cakewallet
11 +PRODUCT_BUNDLE_IDENTIFIER = ${PRODUCT_BUNDLE_IDENTIFIER}
12
13 // The copyright displayed in application information
14 PRODUCT_COPYRIGHT = Copyright © 2022 com.fotolockr. All rights reserved.
macos/Runner/InfoBase.plist
+3 -1
@@ -12,8 +12,10 @@
12 <string>$(PRODUCT_BUNDLE_IDENTIFIER)</string>
13 <key>CFBundleInfoDictionaryVersion</key>
14 <string>6.0</string>
15 + <key>CFBundleDisplayName</key>
16 + <string>Cake Wallet</string>
17 <key>CFBundleName</key>
16 - <string>$(PRODUCT_NAME)</string>
18 + <string>Cake Wallet</string>
19 <key>CFBundlePackageType</key>
20 <string>APPL</string>
21 <key>CFBundleShortVersionString</key>
scripts/android/app_env.sh
+4 -4
@@ -15,15 +15,15 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
15 APP_ANDROID_TYPE=$1
16
17 MONERO_COM_NAME="Monero.com"
18 -MONERO_COM_VERSION="1.9.0"
19 -MONERO_COM_BUILD_NUMBER=71
18 +MONERO_COM_VERSION="1.10.0"
19 +MONERO_COM_BUILD_NUMBER=72
20 MONERO_COM_BUNDLE_ID="com.monero.app"
21 MONERO_COM_PACKAGE="com.monero.app"
22 MONERO_COM_SCHEME="monero.com"
23
24 CAKEWALLET_NAME="Cake Wallet"
25 -CAKEWALLET_VERSION="4.12.1"
26 -CAKEWALLET_BUILD_NUMBER=188
25 +CAKEWALLET_VERSION="4.13.0"
26 +CAKEWALLET_BUILD_NUMBER=189
27 CAKEWALLET_BUNDLE_ID="com.cakewallet.cake_wallet"
28 CAKEWALLET_PACKAGE="com.cakewallet.cake_wallet"
29 CAKEWALLET_SCHEME="cakewallet"
scripts/ios/app_env.sh
+4 -4
@@ -13,13 +13,13 @@ TYPES=($MONERO_COM $CAKEWALLET $HAVEN)
13 APP_IOS_TYPE=$1
14
15 MONERO_COM_NAME="Monero.com"
16 -MONERO_COM_VERSION="1.9.0"
17 -MONERO_COM_BUILD_NUMBER=69
16 +MONERO_COM_VERSION="1.10.0"
17 +MONERO_COM_BUILD_NUMBER=70
18 MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
19
20 CAKEWALLET_NAME="Cake Wallet"
21 -CAKEWALLET_VERSION="4.12.1"
22 -CAKEWALLET_BUILD_NUMBER=206
21 +CAKEWALLET_VERSION="4.13.0"
22 +CAKEWALLET_BUILD_NUMBER=208
23 CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
24
25 HAVEN_NAME="Haven"
scripts/macos/app_config.sh
+10 -1
@@ -1,5 +1,6 @@
1 #!/bin/bash
2
3 +MONERO_COM="monero.com"
4 CAKEWALLET="cakewallet"
5 DIR=`pwd`
6
@@ -10,6 +11,8 @@ fi
11
12 cd ../.. # go to root
13 cp -rf ./macos/Runner/InfoBase.plist ./macos/Runner/Info.plist
14 +/usr/libexec/PlistBuddy -c "Set :CFBundleDisplayName ${APP_MACOS_NAME}" ./macos/Runner/Info.plist
15 +/usr/libexec/PlistBuddy -c "Set :CFBundleName ${APP_MACOS_NAME}" ./macos/Runner/Info.plist
16 /usr/libexec/PlistBuddy -c "Set :CFBundleIdentifier ${APP_MACOS_BUNDLE_ID}" ./macos/Runner/Info.plist
17 /usr/libexec/PlistBuddy -c "Set :CFBundleShortVersionString ${APP_MACOS_VERSION}" ./macos/Runner/Info.plist
18 /usr/libexec/PlistBuddy -c "Set :CFBundleVersion ${APP_MACOS_BUILD_NUMBER}" ./macos/Runner/Info.plist
@@ -17,11 +20,16 @@ cp -rf ./macos/Runner/InfoBase.plist ./macos/Runner/Info.plist
20 # Fill entitlements Bundle ID
21 cp -rf ./macos/Runner/DebugProfileBase.entitlements ./macos/Runner/DebugProfile.entitlements
22 cp -rf ./macos/Runner/ReleaseBase.entitlements ./macos/Runner/Release.entitlements
23 +cp -rf ./macos/Runner/Configs/AppInfoBase.xcconfig ./macos/Runner/Configs/AppInfo.xcconfig
24 sed -i '' "s/\${BUNDLE_ID}/${APP_MACOS_BUNDLE_ID}/g" ./macos/Runner/DebugProfile.entitlements
25 sed -i '' "s/\${BUNDLE_ID}/${APP_MACOS_BUNDLE_ID}/g" ./macos/Runner/Release.entitlements
26 +sed -i '' "s/\${PRODUCT_NAME}/${APP_MACOS_NAME}/g" ./macos/Runner/Configs/AppInfo.xcconfig
27 +sed -i '' "s/\${PRODUCT_BUNDLE_IDENTIFIER}/${APP_MACOS_BUNDLE_ID}/g" ./macos/Runner/Configs/AppInfo.xcconfig
28 CONFIG_ARGS=""
29
30 case $APP_MACOS_TYPE in
31 + $MONERO_COM)
32 + CONFIG_ARGS="--monero";;
33 $CAKEWALLET)
34 CONFIG_ARGS="--monero --bitcoin --ethereum --polygon --nano --bitcoinCash";; #--haven
35 esac
@@ -31,4 +39,5 @@ flutter pub get
39 flutter pub run tool/generate_pubspec.dart
40 flutter pub get
41 flutter packages pub run tool/configure.dart $CONFIG_ARGS
34 -cd $DIR
\ No newline at end of file
42 +cd $DIR
43 +$DIR/app_icon.sh
\ No newline at end of file
scripts/macos/app_env.sh
+15 -4
@@ -5,18 +5,24 @@ APP_MACOS_VERSION=""
5 APP_MACOS_BUILD_VERSION=""
6 APP_MACOS_BUNDLE_ID=""
7
8 +MONERO_COM="monero.com"
9 CAKEWALLET="cakewallet"
10
10 -TYPES=($CAKEWALLET)
11 -APP_MACOS_TYPE=$CAKEWALLET
11 +TYPES=($MONERO_COM $CAKEWALLET)
12 +APP_MACOS_TYPE=$1
13
14 if [ -n "$1" ]; then
15 APP_MACOS_TYPE=$1
16 fi
17
18 +MONERO_COM_NAME="Monero.com"
19 +MONERO_COM_VERSION="1.0.0"
20 +MONERO_COM_BUILD_NUMBER=1
21 +MONERO_COM_BUNDLE_ID="com.cakewallet.monero"
22 +
23 CAKEWALLET_NAME="Cake Wallet"
18 -CAKEWALLET_VERSION="1.5.1"
19 -CAKEWALLET_BUILD_NUMBER=48
24 +CAKEWALLET_VERSION="1.6.0"
25 +CAKEWALLET_BUILD_NUMBER=50
26 CAKEWALLET_BUNDLE_ID="com.fotolockr.cakewallet"
27
28 if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
@@ -25,6 +31,11 @@ if ! [[ " ${TYPES[*]} " =~ " ${APP_MACOS_TYPE} " ]]; then
31 fi
32
33 case $APP_MACOS_TYPE in
34 + $MONERO_COM)
35 + APP_MACOS_NAME=$MONERO_COM_NAME
36 + APP_MACOS_VERSION=$MONERO_COM_VERSION
37 + APP_MACOS_BUILD_NUMBER=$MONERO_COM_BUILD_NUMBER
38 + APP_MACOS_BUNDLE_ID=$MONERO_COM_BUNDLE_ID;;
39 $CAKEWALLET)
40 APP_MACOS_NAME=$CAKEWALLET_NAME
41 APP_MACOS_VERSION=$CAKEWALLET_VERSION
scripts/macos/app_icon.sh new
+44
@@ -0,0 +1,44 @@
1 +#!/bin/sh
2 +
3 +ICON_16_PATH=""
4 +ICON_32_PATH=""
5 +ICON_64_PATH=""
6 +ICON_128_PATH=""
7 +ICON_256_PATH=""
8 +ICON_1024_PATH=""
9 +DEST_DIR_PATH=`pwd`/../../macos/Runner/Assets.xcassets/AppIcon.appiconset
10 +
11 +case $APP_MACOS_TYPE in
12 + "monero.com")
13 + ICON_16_PATH=`pwd`/../../assets/images/macos_icons/monero_macos_icons/monero_macos_16.png
14 + ICON_32_PATH=`pwd`/../../assets/images/macos_icons/monero_macos_icons/monero_macos_32.png
15 + ICON_64_PATH=`pwd`/../../assets/images/macos_icons/monero_macos_icons/monero_macos_64.png
16 + ICON_128_PATH=`pwd`/../../assets/images/macos_icons/monero_macos_icons/monero_macos_128.png
17 + ICON_256_PATH=`pwd`/../../assets/images/macos_icons/monero_macos_icons/monero_macos_256.png
18 + ICON_512_PATH=`pwd`/../../assets/images/macos_icons/monero_macos_icons/monero_macos_512.png
19 + ICON_1024_PATH=`pwd`/../../assets/images/macos_icons/monero_macos_icons/monero_macos_1024.png;;
20 + "cakewallet")
21 + ICON_16_PATH=`pwd`/../../assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_16.png
22 + ICON_32_PATH=`pwd`/../../assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_32.png
23 + ICON_64_PATH=`pwd`/../../assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_64.png
24 + ICON_128_PATH=`pwd`/../../assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_128.png
25 + ICON_256_PATH=`pwd`/../../assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_256.png
26 + ICON_512_PATH=`pwd`/../../assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_512.png
27 + ICON_1024_PATH=`pwd`/../../assets/images/macos_icons/cakewallet_macos_icons/cakewallet_macos_1024.png;;
28 +esac
29 +
30 +rm $DEST_DIR_PATH/app_icon_16.png
31 +rm $DEST_DIR_PATH/app_icon_32.png
32 +rm $DEST_DIR_PATH/app_icon_64.png
33 +rm $DEST_DIR_PATH/app_icon_128.png
34 +rm $DEST_DIR_PATH/app_icon_256.png
35 +rm $DEST_DIR_PATH/app_icon_512.png
36 +rm $DEST_DIR_PATH/app_icon_1024.png
37 +
38 +ln -s $ICON_16_PATH $DEST_DIR_PATH/app_icon_16.png
39 +ln -s $ICON_32_PATH $DEST_DIR_PATH/app_icon_32.png
40 +ln -s $ICON_64_PATH $DEST_DIR_PATH/app_icon_64.png
41 +ln -s $ICON_128_PATH $DEST_DIR_PATH/app_icon_128.png
42 +ln -s $ICON_256_PATH $DEST_DIR_PATH/app_icon_256.png
43 +ln -s $ICON_512_PATH $DEST_DIR_PATH/app_icon_512.png
44 +ln -s $ICON_1024_PATH $DEST_DIR_PATH/app_icon_1024.png
\ No newline at end of file