diff --git a/ios/Runner/Info.plist b/ios/Runner/Info.plist
index eebccea..734c986 100644
--- a/ios/Runner/Info.plist
+++ b/ios/Runner/Info.plist
@@ -38,6 +38,13 @@
UIInterfaceOrientationLandscapeRight
UIInterfaceOrientationPortrait
+
+ NSLocationAlwaysAndWhenInUseUsageDescription
+ This App requires access to your location to pick the location.
+ NSLocationAlwaysUsageDescription
+ This App requires access to your location to pick the location.
+ NSLocationWhenInUseUsageDescription
+ This App requires access to your location to pick the location.
UISupportedInterfaceOrientations~ipad
UIInterfaceOrientationLandscapeLeft
diff --git a/lib/main.dart b/lib/main.dart
index 2afe86a..64dada6 100644
--- a/lib/main.dart
+++ b/lib/main.dart
@@ -10,6 +10,8 @@ import 'package:mc_common_app/repositories/request_repo.dart';
import 'package:mc_common_app/repositories/setting_options_repo.dart';
import 'package:mc_common_app/services/firebase_service.dart';
import 'package:mc_common_app/utils/location/Location.dart';
+import 'package:mc_common_app/utils/navigator.dart';
+import 'package:mc_common_app/utils/utils.dart';
import 'package:mc_common_app/view_models/appointments_view_model.dart';
import 'package:mc_common_app/view_models/chat_view_model.dart';
import 'package:mc_common_app/view_models/dashboard_view_model_customer.dart';
@@ -151,11 +153,11 @@ class MyApp extends StatelessWidget {
languageID: EasyLocalization.of(context)?.locale.languageCode == "ar" ? 1 : 2,
),
);
+
+
return MaterialApp(
navigatorKey: navigatorKey,
- theme: AppTheme.getTheme(
- isArabic: EasyLocalization.of(context)?.locale.languageCode == "ar",
- ),
+ theme: AppTheme.getTheme(isArabic: EasyLocalization.of(context)?.locale.languageCode == "ar"),
debugShowCheckedModeBanner: false,
localizationsDelegates: context.localizationDelegates,
supportedLocales: context.supportedLocales,
@@ -170,9 +172,7 @@ class MyApp extends StatelessWidget {
//Latitude: 24.708741, Longitude: 46.6657643,
-
//Longitude=24.708741&Latitude=46.6657643
-
//update I/flutter ( 5035): │ "latitude": "37.421998",
// I/flutter ( 5035): │ "longitude": "-122.0839",
diff --git a/lib/views/dashboard/dashboard_view.dart b/lib/views/dashboard/dashboard_view.dart
index 7c339a0..ea3c695 100644
--- a/lib/views/dashboard/dashboard_view.dart
+++ b/lib/views/dashboard/dashboard_view.dart
@@ -4,10 +4,15 @@ import 'package:car_customer_app/views/dashboard/fragments/appointments_fragment
import 'package:car_customer_app/views/dashboard/fragments/home_fragment.dart';
import 'package:car_customer_app/views/dashboard/widgets/bottom_nav_bar.dart';
import 'package:flutter/material.dart';
+import 'package:mc_common_app/classes/app_state.dart';
+import 'package:mc_common_app/config/routes.dart';
import 'package:mc_common_app/utils/enums.dart';
+import 'package:mc_common_app/utils/navigator.dart';
+import 'package:mc_common_app/utils/utils.dart';
import 'package:mc_common_app/view_models/dashboard_view_model_customer.dart';
import 'package:mc_common_app/views/common_fragments/ads_fragment.dart';
import 'package:mc_common_app/views/common_fragments/requests_fragment.dart';
+import 'package:mc_common_app/widgets/extensions/extensions_widget.dart';
import 'package:provider/provider.dart';
import 'fragments/branches_fragment.dart';
@@ -41,6 +46,18 @@ class _DashboardViewState extends State {
const AdsFragment(),
const MyRequestsFragment(),
];
+
+ // return GestureDetector(
+ // behavior: HitTestBehavior.translucent,
+ // onTap: () {
+ // if (AppState().getIsViewOnly) {
+ // Utils.showToast("message");
+ // } else {
+ // print("========NN========");
+ // }
+ // },
+ // child: child,
+ // )
return PopScope(
canPop: false,
child: Scaffold(
@@ -49,5 +66,14 @@ class _DashboardViewState extends State {
body: fragments[context.watch().selectedNavbarBarIndex],
),
);
+
+ // return PopScope(
+ // canPop: false,
+ // child: Scaffold(
+ // key: _scaffoldKey,
+ // bottomNavigationBar: CustomBottomNavbar(),
+ // body: fragments[context.watch().selectedNavbarBarIndex],
+ // ),
+ // );
}
}
diff --git a/lib/views/dashboard/fragments/appointments_fragment.dart b/lib/views/dashboard/fragments/appointments_fragment.dart
index df8621f..f202b61 100644
--- a/lib/views/dashboard/fragments/appointments_fragment.dart
+++ b/lib/views/dashboard/fragments/appointments_fragment.dart
@@ -43,7 +43,9 @@ class AppointmentsFragment extends StatelessWidget {
navigateWithName(context, AppRoutes.appoinmentSearchFilterPage);
})
],
- ),
+ ).toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
body: SizedBox(
width: double.infinity,
height: double.infinity,
@@ -106,7 +108,9 @@ class AppointmentsFragment extends StatelessWidget {
},
),
),
- ),
+ ).toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
],
),
),
@@ -119,7 +123,9 @@ class AppointmentsFragment extends StatelessWidget {
Icons.add,
color: MyColors.white,
),
- ),
+ ).toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
);
},
);
diff --git a/lib/views/dashboard/fragments/branches_fragment.dart b/lib/views/dashboard/fragments/branches_fragment.dart
index 2265acc..27a5c80 100644
--- a/lib/views/dashboard/fragments/branches_fragment.dart
+++ b/lib/views/dashboard/fragments/branches_fragment.dart
@@ -42,7 +42,9 @@ class BranchesFragment extends StatelessWidget {
navigateWithName(context, AppRoutes.branchSearchFilterPage);
}),
],
- ),
+ ).toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
body: SizedBox(
width: double.infinity,
height: double.infinity,
@@ -86,7 +88,9 @@ class BranchesFragment extends StatelessWidget {
providerName: branchDetailModel.serviceProviderName ?? "",
providerRatings: branchDetailModel.branchRateAvg ?? 0.0,
services: branchDetailModel.branchServices,
- );
+ ).toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ });
},
separatorBuilder: (context, index) => 12.height,
padding: const EdgeInsets.all(12),
diff --git a/lib/views/dashboard/fragments/home_fragment.dart b/lib/views/dashboard/fragments/home_fragment.dart
index b3b0f6a..3ab9986 100644
--- a/lib/views/dashboard/fragments/home_fragment.dart
+++ b/lib/views/dashboard/fragments/home_fragment.dart
@@ -3,11 +3,13 @@ import 'package:car_customer_app/views/dashboard/widgets/my_recent_branches_widg
import 'package:car_customer_app/views/dashboard/widgets/my_services_categories_widget.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';
+import 'package:mc_common_app/classes/app_state.dart';
import 'package:mc_common_app/config/routes.dart';
import 'package:mc_common_app/extensions/int_extensions.dart';
import 'package:mc_common_app/generated/locale_keys.g.dart';
import 'package:mc_common_app/utils/enums.dart';
import 'package:mc_common_app/utils/navigator.dart';
+import 'package:mc_common_app/utils/utils.dart';
import 'package:mc_common_app/view_models/ad_view_model.dart';
import 'package:mc_common_app/view_models/appointments_view_model.dart';
import 'package:mc_common_app/view_models/dashboard_view_model_customer.dart';
@@ -49,7 +51,9 @@ class HomeFragment extends StatelessWidget {
// ),
// 10.width,
],
- ),
+ ).toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
body: SizedBox(
width: double.infinity,
height: double.infinity,
@@ -67,7 +71,9 @@ class HomeFragment extends StatelessWidget {
context.read().onNavbarTapped(1);
context.read().applyFilterOnAppointmentsVM(appointmentStatusEnum: AppointmentStatusEnum.allAppointments);
},
- ).horPaddingMain(),
+ ).horPaddingMain().toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
CommonAppointmentSliderWidget()
.toWhiteContainer(
width: double.infinity,
@@ -89,7 +95,9 @@ class HomeFragment extends StatelessWidget {
title: LocaleKeys.services.tr().toUpperCase(),
subTitle: '',
onSubtitleTapped: () {},
- ).horPaddingMain(),
+ ).horPaddingMain().toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
MyServicesCategoriesWidget(homeCategories: appointmentVM.branchesCategoriesFilterOptions).horPaddingMain()
],
);
@@ -159,14 +167,18 @@ class HomeFragment extends StatelessWidget {
onSubtitleTapped: () {
context.read().onNavbarTapped(3);
context.read().updateIsExploreAds(false);
- }).horPaddingMain(),
+ }).horPaddingMain().toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
AdsListWidget(
shouldShowAdStatus: true,
isAdsFragment: false,
adsList: adVM.myActiveAdsForHome,
scrollPhysics: NeverScrollableScrollPhysics(),
hasMoreData: adVM.isExploreAdsTapped ? adVM.hasMoreDataForExploreAds : adVM.hasMoreDataForMyAds,
- ),
+ ).toViewOnly(context, onTap: () {
+ navigateWithName(context, AppRoutes.loginWithPassword);
+ }),
],
)
],
diff --git a/lib/views/dashboard/widgets/bottom_nav_bar.dart b/lib/views/dashboard/widgets/bottom_nav_bar.dart
index e28edab..9fcff22 100644
--- a/lib/views/dashboard/widgets/bottom_nav_bar.dart
+++ b/lib/views/dashboard/widgets/bottom_nav_bar.dart
@@ -1,3 +1,5 @@
+import 'package:mc_common_app/classes/app_state.dart';
+import 'package:mc_common_app/utils/utils.dart';
import 'package:mc_common_app/view_models/dashboard_view_model_customer.dart';
import 'package:easy_localization/easy_localization.dart';
import 'package:flutter/material.dart';