diff --git a/assets/images/termsAndConditions.png b/assets/images/termsAndConditions.png index 8581d538..64488152 100644 Binary files a/assets/images/termsAndConditions.png and b/assets/images/termsAndConditions.png differ diff --git a/ios/Podfile.lock b/ios/Podfile.lock index 18b6777e..3ef48140 100644 --- a/ios/Podfile.lock +++ b/ios/Podfile.lock @@ -57,8 +57,6 @@ PODS: - Flutter - flutter_local_notifications (0.0.1): - Flutter - - flutter_qr_reader (0.0.1): - - Flutter - fluttertoast (0.0.2): - Flutter - Toast @@ -123,7 +121,6 @@ DEPENDENCIES: - flutter_image_compress (from `.symlinks/plugins/flutter_image_compress/ios`) - flutter_keychain (from `.symlinks/plugins/flutter_keychain/ios`) - flutter_local_notifications (from `.symlinks/plugins/flutter_local_notifications/ios`) - - flutter_qr_reader (from `.symlinks/plugins/flutter_qr_reader/ios`) - fluttertoast (from `.symlinks/plugins/fluttertoast/ios`) - open_file (from `.symlinks/plugins/open_file/ios`) - package_info_plus (from `.symlinks/plugins/package_info_plus/ios`) @@ -175,8 +172,6 @@ EXTERNAL SOURCES: :path: ".symlinks/plugins/flutter_keychain/ios" flutter_local_notifications: :path: ".symlinks/plugins/flutter_local_notifications/ios" - flutter_qr_reader: - :path: ".symlinks/plugins/flutter_qr_reader/ios" fluttertoast: :path: ".symlinks/plugins/fluttertoast/ios" open_file: @@ -219,7 +214,6 @@ SPEC CHECKSUMS: flutter_image_compress: 5a5e9aee05b6553048b8df1c3bc456d0afaac433 flutter_keychain: 01aabf894ffe8b01adfda1d9df21c210c1b4b452 flutter_local_notifications: 0c0b1ae97e741e1521e4c1629a459d04b9aec743 - flutter_qr_reader: d930dde3b2cfe2b3d0bb7d66e5ff3e514300a5e5 fluttertoast: 16fbe6039d06a763f3533670197d01fc73459037 libwebp: 98a37e597e40bfdb4c911fc98f2c53d0b12d05fc Mantle: c5aa8794a29a022dfbbfc9799af95f477a69b62d @@ -241,6 +235,6 @@ SPEC CHECKSUMS: video_thumbnail: c4e2a3c539e247d4de13cd545344fd2d26ffafd1 webview_flutter_wkwebview: b7e70ef1ddded7e69c796c7390ee74180182971f -PODFILE CHECKSUM: db8a7794fb1b0bee1e3803fed876c7cf9577099b +PODFILE CHECKSUM: db1b3d34103b9bca35e1d0bca266af8024bec0bc COCOAPODS: 1.11.3 diff --git a/ios/Runner.xcodeproj/project.pbxproj b/ios/Runner.xcodeproj/project.pbxproj index fc1e35ee..d5c94b8d 100644 --- a/ios/Runner.xcodeproj/project.pbxproj +++ b/ios/Runner.xcodeproj/project.pbxproj @@ -10,13 +10,13 @@ 03729451251A04200081BDCF /* ShareViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 03729450251A04200081BDCF /* ShareViewController.swift */; }; 03729454251A04200081BDCF /* MainInterface.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 03729452251A04200081BDCF /* MainInterface.storyboard */; }; 03729458251A04200081BDCF /* @mosphere-pro.appex in Embed App Extensions */ = {isa = PBXBuildFile; fileRef = 0372944E251A04200081BDCF /* @mosphere-pro.appex */; settings = {ATTRIBUTES = (RemoveHeadersOnCopy, ); }; }; - 0BDCBEE0D322301A1EF0869E /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = B1C35B7369486DE1AB7F3C72 /* Pods_Runner.framework */; }; 1498D2341E8E89220040F4C2 /* GeneratedPluginRegistrant.m in Sources */ = {isa = PBXBuildFile; fileRef = 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */; }; 3B3967161E833CAA004F5970 /* AppFrameworkInfo.plist in Resources */ = {isa = PBXBuildFile; fileRef = 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */; }; 74858FAF1ED2DC5600515810 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 74858FAE1ED2DC5600515810 /* AppDelegate.swift */; }; 97C146FC1CF9000F007C117D /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FA1CF9000F007C117D /* Main.storyboard */; }; 97C146FE1CF9000F007C117D /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FD1CF9000F007C117D /* Assets.xcassets */; }; 97C147011CF9000F007C117D /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 97C146FF1CF9000F007C117D /* LaunchScreen.storyboard */; }; + A22C357F66BE84164C6231A6 /* Pods_Runner.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 06F50C4A86344C6DBD297C6E /* Pods_Runner.framework */; }; /* End PBXBuildFile section */ /* Begin PBXContainerItemProxy section */ @@ -60,15 +60,15 @@ 03729455251A04200081BDCF /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; 0372945E251A082B0081BDCF /* Runner.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = Runner.entitlements; sourceTree = ""; }; 0372945F251A087A0081BDCF /* Share Extension.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = "Share Extension.entitlements"; sourceTree = ""; }; + 06F50C4A86344C6DBD297C6E /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; 1498D2321E8E86230040F4C2 /* GeneratedPluginRegistrant.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = GeneratedPluginRegistrant.h; sourceTree = ""; }; 1498D2331E8E89220040F4C2 /* GeneratedPluginRegistrant.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = GeneratedPluginRegistrant.m; sourceTree = ""; }; 3B3967151E833CAA004F5970 /* AppFrameworkInfo.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; name = AppFrameworkInfo.plist; path = Flutter/AppFrameworkInfo.plist; sourceTree = ""; }; - 4F69A74C18BAFFE4AEA79529 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; - 655888FAAB2B85959C2880D1 /* 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 = ""; }; + 45211ED657BA2DDD51C32096 /* 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 = ""; }; 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 = ""; }; 7AFA3C8E1D35360C0083082E /* Release.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; name = Release.xcconfig; path = Flutter/Release.xcconfig; sourceTree = ""; }; - 8236931B8D27443DDF5E8751 /* 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 = ""; }; + 936BF752DA44252CFFD59242 /* Pods-Runner.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-Runner.debug.xcconfig"; path = "Target Support Files/Pods-Runner/Pods-Runner.debug.xcconfig"; sourceTree = ""; }; 9740EEB21CF90195004384FC /* Debug.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Debug.xcconfig; path = Flutter/Debug.xcconfig; sourceTree = ""; }; 9740EEB31CF90195004384FC /* Generated.xcconfig */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xcconfig; name = Generated.xcconfig; path = Flutter/Generated.xcconfig; sourceTree = ""; }; 97C146EE1CF9000F007C117D /* Runner.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = Runner.app; sourceTree = BUILT_PRODUCTS_DIR; }; @@ -76,7 +76,7 @@ 97C146FD1CF9000F007C117D /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; 97C147001CF9000F007C117D /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; 97C147021CF9000F007C117D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - B1C35B7369486DE1AB7F3C72 /* Pods_Runner.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_Runner.framework; sourceTree = BUILT_PRODUCTS_DIR; }; + B984AA408AD32B13E6AEA940 /* 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 = ""; }; /* End PBXFileReference section */ /* Begin PBXFrameworksBuildPhase section */ @@ -91,7 +91,7 @@ isa = PBXFrameworksBuildPhase; buildActionMask = 2147483647; files = ( - 0BDCBEE0D322301A1EF0869E /* Pods_Runner.framework in Frameworks */, + A22C357F66BE84164C6231A6 /* Pods_Runner.framework in Frameworks */, ); runOnlyForDeploymentPostprocessing = 0; }; @@ -109,10 +109,10 @@ path = "Share Extension"; sourceTree = ""; }; - 75DCE734B469EA1865970A11 /* Frameworks */ = { + 6A4FCF7678CD1FD694F0B3D8 /* Frameworks */ = { isa = PBXGroup; children = ( - B1C35B7369486DE1AB7F3C72 /* Pods_Runner.framework */, + 06F50C4A86344C6DBD297C6E /* Pods_Runner.framework */, ); name = Frameworks; sourceTree = ""; @@ -131,9 +131,9 @@ 978D8E3BA80D7D0BD7F4B6D7 /* Pods */ = { isa = PBXGroup; children = ( - 4F69A74C18BAFFE4AEA79529 /* Pods-Runner.debug.xcconfig */, - 655888FAAB2B85959C2880D1 /* Pods-Runner.release.xcconfig */, - 8236931B8D27443DDF5E8751 /* Pods-Runner.profile.xcconfig */, + 936BF752DA44252CFFD59242 /* Pods-Runner.debug.xcconfig */, + B984AA408AD32B13E6AEA940 /* Pods-Runner.release.xcconfig */, + 45211ED657BA2DDD51C32096 /* Pods-Runner.profile.xcconfig */, ); path = Pods; sourceTree = ""; @@ -146,7 +146,7 @@ 0372944F251A04200081BDCF /* Share Extension */, 97C146EF1CF9000F007C117D /* Products */, 978D8E3BA80D7D0BD7F4B6D7 /* Pods */, - 75DCE734B469EA1865970A11 /* Frameworks */, + 6A4FCF7678CD1FD694F0B3D8 /* Frameworks */, ); sourceTree = ""; }; @@ -199,7 +199,7 @@ isa = PBXNativeTarget; buildConfigurationList = 97C147051CF9000F007C117D /* Build configuration list for PBXNativeTarget "Runner" */; buildPhases = ( - CF87B4D9A3D8128EF27369B4 /* [CP] Check Pods Manifest.lock */, + 22F5EF24F4C1B21F2E181589 /* [CP] Check Pods Manifest.lock */, 9740EEB61CF901F6004384FC /* Run Script */, 97C146EA1CF9000F007C117D /* Sources */, 97C146EB1CF9000F007C117D /* Frameworks */, @@ -207,7 +207,7 @@ 9705A1C41CF9048500538489 /* Embed Frameworks */, 3B06AD1E1E4923F5004D2608 /* Thin Binary */, 03729459251A04200081BDCF /* Embed App Extensions */, - CDE842460B64DBF139B1781B /* [CP] Embed Pods Frameworks */, + 6CB03256DD0BC5BE5F651133 /* [CP] Embed Pods Frameworks */, ); buildRules = ( ); @@ -280,35 +280,43 @@ /* End PBXResourcesBuildPhase section */ /* Begin PBXShellScriptBuildPhase section */ - 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { + 22F5EF24F4C1B21F2E181589 /* [CP] Check Pods Manifest.lock */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); + inputFileListPaths = ( + ); inputPaths = ( + "${PODS_PODFILE_DIR_PATH}/Podfile.lock", + "${PODS_ROOT}/Manifest.lock", + ); + name = "[CP] Check Pods Manifest.lock"; + outputFileListPaths = ( ); - name = "Thin Binary"; outputPaths = ( + "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; + shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; + showEnvVarsInLog = 0; }; - 9740EEB61CF901F6004384FC /* Run Script */ = { + 3B06AD1E1E4923F5004D2608 /* Thin Binary */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); inputPaths = ( ); - name = "Run Script"; + name = "Thin Binary"; outputPaths = ( ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" embed_and_thin"; }; - CDE842460B64DBF139B1781B /* [CP] Embed Pods Frameworks */ = { + 6CB03256DD0BC5BE5F651133 /* [CP] Embed Pods Frameworks */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( @@ -325,27 +333,19 @@ shellScript = "\"${PODS_ROOT}/Target Support Files/Pods-Runner/Pods-Runner-frameworks.sh\"\n"; showEnvVarsInLog = 0; }; - CF87B4D9A3D8128EF27369B4 /* [CP] Check Pods Manifest.lock */ = { + 9740EEB61CF901F6004384FC /* Run Script */ = { isa = PBXShellScriptBuildPhase; buildActionMask = 2147483647; files = ( ); - inputFileListPaths = ( - ); inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputFileListPaths = ( ); + name = "Run Script"; outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-Runner-checkManifestLockResult.txt", ); runOnlyForDeploymentPostprocessing = 0; shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; + shellScript = "/bin/sh \"$FLUTTER_ROOT/packages/flutter_tools/bin/xcode_backend.sh\" build"; }; /* End PBXShellScriptBuildPhase section */ diff --git a/lib/routes/route_names.dart b/lib/routes/route_names.dart index b9f4b784..6a113c21 100644 --- a/lib/routes/route_names.dart +++ b/lib/routes/route_names.dart @@ -13,5 +13,6 @@ class Routes { static const String EMPTY_TRUSTED_CONTACTS = 'emptyTrustedContacts'; static const String MY_FILES = 'myFiles'; static const String GROUPS = 'groups'; + static const String TERMS_SCREEN="termsScreen"; static const String SETTINGS = 'settings'; } diff --git a/lib/routes/routes.dart b/lib/routes/routes.dart index 96002809..61d1391f 100644 --- a/lib/routes/routes.dart +++ b/lib/routes/routes.dart @@ -2,6 +2,7 @@ import 'package:at_contacts_flutter/screens/blocked_screen.dart'; import 'package:at_contacts_group_flutter/screens/group_contact_view/group_contact_view.dart'; import 'package:at_contacts_group_flutter/screens/list/group_list.dart'; import 'package:atsign_atmosphere_pro/routes/route_names.dart'; +import 'package:atsign_atmosphere_pro/screens/common_widgets/terms_and_condition_screen.dart'; import 'package:atsign_atmosphere_pro/screens/common_widgets/website_webview.dart'; import 'package:atsign_atmosphere_pro/screens/history/history_screen.dart'; import 'package:atsign_atmosphere_pro/screens/home/home.dart'; @@ -23,6 +24,10 @@ class SetupRoutes { ModalRoute.of(context)!.settings.arguments as Map; return WebsiteScreen(title: args["title"], url: args["url"]); }, + Routes.TERMS_SCREEN: (context) { + ModalRoute.of(context)!.settings.arguments as Map; + return TermsAndConditionScreen(); + }, Routes.WELCOME_SCREEN: (context) => WelcomeScreen(), Routes.FAQ_SCREEN: (context) => WebsiteScreen( title: 'FAQ', diff --git a/lib/screens/common_widgets/side_bar.dart b/lib/screens/common_widgets/side_bar.dart index 79f29bee..3bf1579a 100644 --- a/lib/screens/common_widgets/side_bar.dart +++ b/lib/screens/common_widgets/side_bar.dart @@ -4,6 +4,11 @@ import 'package:at_client_mobile/at_client_mobile.dart'; import 'package:at_common_flutter/services/size_config.dart'; import 'package:at_contact/at_contact.dart'; import 'package:at_contacts_flutter/utils/init_contacts_service.dart'; +import 'package:atsign_atmosphere_pro/routes/route_names.dart'; +import 'package:atsign_atmosphere_pro/screens/common_widgets/contact_initial.dart'; +import 'package:atsign_atmosphere_pro/services/common_utility_functions.dart'; +import 'package:atsign_atmosphere_pro/view_models/file_download_checker.dart'; +import 'package:at_onboarding_flutter/at_onboarding_flutter.dart'; import 'package:at_onboarding_flutter/at_onboarding_flutter.dart'; import 'package:atsign_atmosphere_pro/routes/route_names.dart'; import 'package:atsign_atmosphere_pro/screens/common_widgets/contact_initial.dart'; @@ -67,7 +72,7 @@ class _SideBarWidgetState extends State { Routes.BLOCKED_USERS, Routes.MY_FILES, Routes.GROUPS, - Routes.WEBSITE_SCREEN, + Routes.TERMS_SCREEN, Routes.WEBSITE_SCREEN, Routes.FAQ_SCREEN, Routes.TRUSTED_CONTACTS, diff --git a/lib/screens/common_widgets/terms_and_condition_screen.dart b/lib/screens/common_widgets/terms_and_condition_screen.dart new file mode 100644 index 00000000..4bccb2c7 --- /dev/null +++ b/lib/screens/common_widgets/terms_and_condition_screen.dart @@ -0,0 +1,31 @@ +import 'package:atsign_atmosphere_pro/routes/route_names.dart'; +import 'package:atsign_atmosphere_pro/screens/welcome_screen/widgets/setting_page_button.dart'; +import 'package:atsign_atmosphere_pro/utils/images.dart'; +import 'package:flutter/material.dart'; + +class TermsAndConditionScreen extends StatefulWidget { + @override + State createState() => + _TermsAndConditionScreenState(); +} + +class _TermsAndConditionScreenState extends State { + @override + Widget build(BuildContext context) { + return Scaffold( + appBar: AppBar(), + body: Center( + child: SettingPageButton( + iconPath: ImageConstants.termsAndConditionsIcon, + title: "Terms & Conditions", + onTap: () { + Navigator.pushNamed(context, Routes.WEBSITE_SCREEN, arguments: { + "title": "Terms & Conditions", + "url": "http://flutter.io/terms-and-conditions" + }); + }, + ), + ), + ); + } +} diff --git a/lib/screens/welcome_screen/widgets/setting_page_button.dart b/lib/screens/welcome_screen/widgets/setting_page_button.dart new file mode 100644 index 00000000..eb909418 --- /dev/null +++ b/lib/screens/welcome_screen/widgets/setting_page_button.dart @@ -0,0 +1,55 @@ +import 'package:at_backupkey_flutter/utils/size_config.dart'; +import 'package:atsign_atmosphere_pro/utils/colors.dart'; +import 'package:flutter/material.dart'; + +class SettingPageButton extends StatelessWidget { + final String title; + final String iconPath; + final VoidCallback onTap; + const SettingPageButton({ + required this.iconPath, + required this.title, + required this.onTap, + }); + + @override + Widget build(BuildContext context) { + SizeConfig().init(context); + return GestureDetector( + onTap: onTap, + child: Container( + height: 62.toHeight, + width: 344.toWidth, + decoration: BoxDecoration( + color: ColorConstants.buttonBackgroundColor, + border: Border.all( + color: ColorConstants.buttonBorderColor, + width: 1, + ), + borderRadius: BorderRadius.circular(10), + ), + child: Row( + children: [ + Padding( + padding: EdgeInsets.only( + left: 30.0.toWidth, + right: 25.toWidth, + ), + child: Image.asset( + iconPath, + height: 28.33.toHeight, + ), + ), + Text( + title, + style: TextStyle( + fontSize: 18.toFont, + color: ColorConstants.buttonBorderColor, + fontWeight: FontWeight.w600, + ), + ) + ], + )), + ); + } +} diff --git a/lib/screens/welcome_screen/widgets/welcome_sceen_home.dart b/lib/screens/welcome_screen/widgets/welcome_sceen_home.dart index 1f3dcb84..623e2b2b 100644 --- a/lib/screens/welcome_screen/widgets/welcome_sceen_home.dart +++ b/lib/screens/welcome_screen/widgets/welcome_sceen_home.dart @@ -178,16 +178,12 @@ class _WelcomeScreenHomeState extends State { ), SizedBox( height: (_welcomeScreenProvider - .selectedContacts != - null && - _welcomeScreenProvider .selectedContacts.isNotEmpty && filePickerModel.selectedFiles.isNotEmpty) ? 20.toHeight : 60.toHeight, ), - (_welcomeScreenProvider.selectedContacts != null && - _welcomeScreenProvider + (_welcomeScreenProvider .selectedContacts.isNotEmpty && filePickerModel.selectedFiles.isNotEmpty) ? Container( @@ -265,9 +261,7 @@ class _WelcomeScreenHomeState extends State { SizedBox( height: 30.toHeight, ), - if (_welcomeScreenProvider.selectedContacts != - null && - _welcomeScreenProvider + if (_welcomeScreenProvider .selectedContacts.isNotEmpty && filePickerModel.selectedFiles.isNotEmpty) ...[ Row( diff --git a/lib/utils/colors.dart b/lib/utils/colors.dart index 9486654b..2ddfa6d6 100644 --- a/lib/utils/colors.dart +++ b/lib/utils/colors.dart @@ -33,6 +33,9 @@ class ColorConstants { static const Color textBoxBg = Color(0xFFF2F2F2); static const Color lightBlueBg = Color(0xFFF8FBFF); + static const Color buttonBorderColor = Color(0xFF939393); + static const Color buttonBackgroundColor = Color(0xFFF1F1F1); + //NEW UI COLORS static const Color fadedGreyN = Color(0xFFF1F1F1); static const Color dividerGrey = Color(0xFFD9D9D9);