CAKE-31 | applied new design to restore buttons

OleksandrSobol committed Sep 1, 2020 at 22:04 UTC 9da460da48e0430458a4a6df93cc5be528e20b05
18 files changed +102 -67
assets/images/2.0x/backup.png
Binary files a/assets/images/2.0x/backup.png and b/assets/images/2.0x/backup.png differ
assets/images/2.0x/restore_keys.png
Binary files a/assets/images/2.0x/restore_keys.png and b/assets/images/2.0x/restore_keys.png differ
assets/images/2.0x/restore_seed.png
Binary files a/assets/images/2.0x/restore_seed.png and b/assets/images/2.0x/restore_seed.png differ
assets/images/2.0x/restore_wallet_image.png
Binary files a/assets/images/2.0x/restore_wallet_image.png and b/assets/images/2.0x/restore_wallet_image.png differ
assets/images/3.0x/backup.png
Binary files a/assets/images/3.0x/backup.png and b/assets/images/3.0x/backup.png differ
assets/images/3.0x/restore_keys.png
Binary files a/assets/images/3.0x/restore_keys.png and b/assets/images/3.0x/restore_keys.png differ
assets/images/3.0x/restore_seed.png
Binary files a/assets/images/3.0x/restore_seed.png and b/assets/images/3.0x/restore_seed.png differ
assets/images/3.0x/restore_wallet_image.png
Binary files a/assets/images/3.0x/restore_wallet_image.png and b/assets/images/3.0x/restore_wallet_image.png differ
assets/images/backup.png
Binary files a/assets/images/backup.png and b/assets/images/backup.png differ
assets/images/restore_keys.png
Binary files a/assets/images/restore_keys.png and b/assets/images/restore_keys.png differ
assets/images/restore_seed.png
Binary files a/assets/images/restore_seed.png and b/assets/images/restore_seed.png differ
assets/images/restore_wallet_image.png
Binary files a/assets/images/restore_wallet_image.png and b/assets/images/restore_wallet_image.png differ
cw_monero/pubspec.lock
+12 -19
@@ -7,42 +7,42 @@ packages:
7 name: archive
8 url: "https://pub.dartlang.org"
9 source: hosted
10 - version: "2.0.11"
10 + version: "2.0.13"
11 args:
12 dependency: transitive
13 description:
14 name: args
15 url: "https://pub.dartlang.org"
16 source: hosted
17 - version: "1.5.2"
17 + version: "1.6.0"
18 async:
19 dependency: transitive
20 description:
21 name: async
22 url: "https://pub.dartlang.org"
23 source: hosted
24 - version: "2.4.0"
24 + version: "2.4.1"
25 boolean_selector:
26 dependency: transitive
27 description:
28 name: boolean_selector
29 url: "https://pub.dartlang.org"
30 source: hosted
31 - version: "1.0.5"
31 + version: "2.0.0"
32 charcode:
33 dependency: transitive
34 description:
35 name: charcode
36 url: "https://pub.dartlang.org"
37 source: hosted
38 - version: "1.1.2"
38 + version: "1.1.3"
39 collection:
40 dependency: transitive
41 description:
42 name: collection
43 url: "https://pub.dartlang.org"
44 source: hosted
45 - version: "1.14.11"
45 + version: "1.14.12"
46 convert:
47 dependency: transitive
48 description:
@@ -56,7 +56,7 @@ packages:
56 name: crypto
57 url: "https://pub.dartlang.org"
58 source: hosted
59 - version: "2.1.3"
59 + version: "2.1.4"
60 ffi:
61 dependency: "direct main"
62 description:
@@ -80,7 +80,7 @@ packages:
80 name: image
81 url: "https://pub.dartlang.org"
82 source: hosted
83 - version: "2.1.4"
83 + version: "2.1.12"
84 matcher:
85 dependency: transitive
86 description:
@@ -109,13 +109,6 @@ packages:
109 url: "https://pub.dartlang.org"
110 source: hosted
111 version: "1.4.0"
112 - pedantic:
113 - dependency: transitive
114 - description:
115 - name: pedantic
116 - url: "https://pub.dartlang.org"
117 - source: hosted
118 - version: "1.8.0+1"
112 petitparser:
113 dependency: transitive
114 description:
@@ -136,7 +129,7 @@ packages:
129 name: quiver
130 url: "https://pub.dartlang.org"
131 source: hosted
139 - version: "2.0.5"
132 + version: "2.1.3"
133 sky_engine:
134 dependency: transitive
135 description: flutter
@@ -148,7 +141,7 @@ packages:
141 name: source_span
142 url: "https://pub.dartlang.org"
143 source: hosted
151 - version: "1.5.5"
144 + version: "1.7.0"
145 stack_trace:
146 dependency: transitive
147 description:
@@ -183,7 +176,7 @@ packages:
176 name: test_api
177 url: "https://pub.dartlang.org"
178 source: hosted
186 - version: "0.2.11"
179 + version: "0.2.15"
180 typed_data:
181 dependency: transitive
182 description:
@@ -204,7 +197,7 @@ packages:
197 name: xml
198 url: "https://pub.dartlang.org"
199 source: hosted
207 - version: "3.5.0"
200 + version: "3.6.1"
201 sdks:
202 dart: ">=2.6.0 <3.0.0"
203 flutter: ">=0.1.4 <2.0.0"
ios/Podfile
+51 -38
@@ -15,59 +15,72 @@ def parse_KV_file(file, separator='=')
15 if !File.exists? file_abs_path
16 return [];
17 end
18 - pods_ary = []
18 + generated_key_values = {}
19 skip_line_start_symbols = ["#", "/"]
20 - File.foreach(file_abs_path) { |line|
21 - next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
22 - plugin = line.split(pattern=separator)
23 - if plugin.length == 2
24 - podname = plugin[0].strip()
25 - path = plugin[1].strip()
26 - podpath = File.expand_path("#{path}", file_abs_path)
27 - pods_ary.push({:name => podname, :path => podpath});
28 - else
29 - puts "Invalid plugin specification: #{line}"
30 - end
31 - }
32 - return pods_ary
20 + File.foreach(file_abs_path) do |line|
21 + next if skip_line_start_symbols.any? { |symbol| line =~ /^\s*#{symbol}/ }
22 + plugin = line.split(pattern=separator)
23 + if plugin.length == 2
24 + podname = plugin[0].strip()
25 + path = plugin[1].strip()
26 + podpath = File.expand_path("#{path}", file_abs_path)
27 + generated_key_values[podname] = podpath
28 + else
29 + puts "Invalid plugin specification: #{line}"
30 + end
31 + end
32 + generated_key_values
33 end
34
35 target 'Runner' do
36 - # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
37 - # referring to absolute paths on developers' machines.
36 use_frameworks!
39 - system('rm -rf .symlinks')
40 - system('mkdir -p .symlinks/plugins')
37 + use_modular_headers!
38
42 - # Flutter Pods
43 - generated_xcode_build_settings = parse_KV_file('./Flutter/Generated.xcconfig')
44 - if generated_xcode_build_settings.empty?
45 - puts "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first."
46 - end
47 - generated_xcode_build_settings.map { |p|
48 - if p[:name] == 'FLUTTER_FRAMEWORK_DIR'
49 - symlink = File.join('.symlinks', 'flutter')
50 - File.symlink(File.dirname(p[:path]), symlink)
51 - pod 'Flutter', :path => File.join(symlink, File.basename(p[:path]))
39 + # Flutter Pod
40 +
41 + copied_flutter_dir = File.join(__dir__, 'Flutter')
42 + copied_framework_path = File.join(copied_flutter_dir, 'Flutter.framework')
43 + copied_podspec_path = File.join(copied_flutter_dir, 'Flutter.podspec')
44 + unless File.exist?(copied_framework_path) && File.exist?(copied_podspec_path)
45 + # Copy Flutter.framework and Flutter.podspec to Flutter/ to have something to link against if the xcode backend script has not run yet.
46 + # That script will copy the correct debug/profile/release version of the framework based on the currently selected Xcode configuration.
47 + # CocoaPods will not embed the framework on pod install (before any build phases can generate) if the dylib does not exist.
48 +
49 + generated_xcode_build_settings_path = File.join(copied_flutter_dir, 'Generated.xcconfig')
50 + unless File.exist?(generated_xcode_build_settings_path)
51 + raise "Generated.xcconfig must exist. If you're running pod install manually, make sure flutter pub get is executed first"
52 end
53 - }
53 + generated_xcode_build_settings = parse_KV_file(generated_xcode_build_settings_path)
54 + cached_framework_dir = generated_xcode_build_settings['FLUTTER_FRAMEWORK_DIR'];
55 +
56 + unless File.exist?(copied_framework_path)
57 + FileUtils.cp_r(File.join(cached_framework_dir, 'Flutter.framework'), copied_flutter_dir)
58 + end
59 + unless File.exist?(copied_podspec_path)
60 + FileUtils.cp(File.join(cached_framework_dir, 'Flutter.podspec'), copied_flutter_dir)
61 + end
62 + end
63 +
64 + # Keep pod path relative so it can be checked into Podfile.lock.
65 + pod 'Flutter', :path => 'Flutter'
66
67 # Plugin Pods
68 +
69 + # Prepare symlinks folder. We use symlinks to avoid having Podfile.lock
70 + # referring to absolute paths on developers' machines.
71 + system('rm -rf .symlinks')
72 + system('mkdir -p .symlinks/plugins')
73 plugin_pods = parse_KV_file('../.flutter-plugins')
57 - plugin_pods.map { |p|
58 - symlink = File.join('.symlinks', 'plugins', p[:name])
59 - File.symlink(p[:path], symlink)
60 - pod p[:name], :path => File.join(symlink, 'ios')
61 - }
74 + plugin_pods.each do |name, path|
75 + symlink = File.join('.symlinks', 'plugins', name)
76 + File.symlink(path, symlink)
77 + pod name, :path => File.join(symlink, 'ios')
78 + end
79 end
80
64 -# Prevent Cocoapods from embedding a second Flutter framework and causing an error with the new Xcode build system.
65 -install! 'cocoapods', :disable_input_output_paths => true
66 -
81 post_install do |installer|
82 installer.pods_project.targets.each do |target|
83 target.build_configurations.each do |config|
70 - config.build_settings['SWIFT_VERSION'] = '4.0' # required by simple_permission
84 config.build_settings['ENABLE_BITCODE'] = 'NO'
85 end
86 end
ios/Podfile.lock
+3 -3
@@ -61,7 +61,7 @@ DEPENDENCIES:
61 - cw_monero (from `.symlinks/plugins/cw_monero/ios`)
62 - devicelocale (from `.symlinks/plugins/devicelocale/ios`)
63 - esys_flutter_share (from `.symlinks/plugins/esys_flutter_share/ios`)
64 - - Flutter (from `.symlinks/flutter/ios`)
64 + - Flutter (from `Flutter`)
65 - flutter_plugin_android_lifecycle (from `.symlinks/plugins/flutter_plugin_android_lifecycle/ios`)
66 - flutter_secure_storage (from `.symlinks/plugins/flutter_secure_storage/ios`)
67 - local_auth (from `.symlinks/plugins/local_auth/ios`)
@@ -92,7 +92,7 @@ EXTERNAL SOURCES:
92 esys_flutter_share:
93 :path: ".symlinks/plugins/esys_flutter_share/ios"
94 Flutter:
95 - :path: ".symlinks/flutter/ios"
95 + :path: Flutter
96 flutter_plugin_android_lifecycle:
97 :path: ".symlinks/plugins/flutter_plugin_android_lifecycle/ios"
98 flutter_secure_storage:
@@ -145,6 +145,6 @@ SPEC CHECKSUMS:
145 url_launcher_macos: fd7894421cd39320dce5f292fc99ea9270b2a313
146 url_launcher_web: e5527357f037c87560776e36436bf2b0288b965c
147
148 -PODFILE CHECKSUM: f1916a43bb28badbd408be80e8e4b8652a74e93e
148 +PODFILE CHECKSUM: c34e2287a9ccaa606aeceab922830efb9a6ff69a
149
150 COCOAPODS: 1.9.3
ios/Runner.xcodeproj/project.pbxproj
+31
@@ -272,9 +272,40 @@
272 files = (
273 );
274 inputPaths = (
275 + "${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh",
276 + "${PODS_ROOT}/../Flutter/Flutter.framework",
277 + "${BUILT_PRODUCTS_DIR}/MTBBarcodeScanner/MTBBarcodeScanner.framework",
278 + "${BUILT_PRODUCTS_DIR}/SwiftProtobuf/SwiftProtobuf.framework",
279 + "${BUILT_PRODUCTS_DIR}/barcode_scan/barcode_scan.framework",
280 + "${BUILT_PRODUCTS_DIR}/cw_monero/cw_monero.framework",
281 + "${BUILT_PRODUCTS_DIR}/devicelocale/devicelocale.framework",
282 + "${BUILT_PRODUCTS_DIR}/esys_flutter_share/esys_flutter_share.framework",
283 + "${BUILT_PRODUCTS_DIR}/flutter_plugin_android_lifecycle/flutter_plugin_android_lifecycle.framework",
284 + "${BUILT_PRODUCTS_DIR}/flutter_secure_storage/flutter_secure_storage.framework",
285 + "${BUILT_PRODUCTS_DIR}/local_auth/local_auth.framework",
286 + "${BUILT_PRODUCTS_DIR}/package_info/package_info.framework",
287 + "${BUILT_PRODUCTS_DIR}/path_provider/path_provider.framework",
288 + "${BUILT_PRODUCTS_DIR}/share/share.framework",
289 + "${BUILT_PRODUCTS_DIR}/shared_preferences/shared_preferences.framework",
290 + "${BUILT_PRODUCTS_DIR}/url_launcher/url_launcher.framework",
291 );
292 name = "[CP] Embed Pods Frameworks";
293 outputPaths = (
294 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Flutter.framework",
295 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MTBBarcodeScanner.framework",
296 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/SwiftProtobuf.framework",
297 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/barcode_scan.framework",
298 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/cw_monero.framework",
299 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/devicelocale.framework",
300 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/esys_flutter_share.framework",
301 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_plugin_android_lifecycle.framework",
302 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/flutter_secure_storage.framework",
303 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/local_auth.framework",
304 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/package_info.framework",
305 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/path_provider.framework",
306 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/share.framework",
307 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/shared_preferences.framework",
308 + "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/url_launcher.framework",
309 );
310 runOnlyForDeploymentPostprocessing = 0;
311 shellPath = /bin/sh;
lib/di.dart
-3
@@ -290,9 +290,6 @@ Future setup(
290 getIt.registerFactory(() => ContactListViewModel(
291 getIt.get<AppStore>().contactListStore, getIt.get<ContactService>()));
292
293 - /*getIt.registerFactory(
294 - () => ContactListPage(getIt.get<ContactListViewModel>()));*/
295 -
293 getIt.registerFactoryParam<ContactListPage, bool, void>((bool isEditable, _) =>
294 ContactListPage(getIt.get<ContactListViewModel>(), isEditable: isEditable));
295
lib/src/screens/restore/widgets/restore_button.dart
+5 -4
@@ -19,12 +19,12 @@ class RestoreButton extends StatelessWidget {
19 onTap: onPressed,
20 child: Container(
21 width: double.infinity,
22 - height: 150,
22 + height: 160,
23 padding: EdgeInsets.all(24),
24 alignment: Alignment.topLeft,
25 decoration: BoxDecoration(
26 borderRadius: BorderRadius.all(Radius.circular(12)),
27 - color: Theme.of(context).accentTextTheme.title.backgroundColor,
27 + color: Theme.of(context).accentTextTheme.caption.color,
28 ),
29 child: Row(
30 mainAxisSize: MainAxisSize.max,
@@ -44,7 +44,7 @@ class RestoreButton extends StatelessWidget {
44 title,
45 style: TextStyle(
46 fontSize: 16,
47 - fontWeight: FontWeight.w600,
47 + fontWeight: FontWeight.w500,
48 color: Theme.of(context).primaryTextTheme.title.color
49 ),
50 ),
@@ -54,7 +54,8 @@ class RestoreButton extends StatelessWidget {
54 description,
55 style: TextStyle(
56 fontSize: 14,
57 - color: Theme.of(context).primaryTextTheme.caption.color
57 + fontWeight: FontWeight.normal,
58 + color: Theme.of(context).primaryTextTheme.overline.color
59 ),
60 ),
61 )