6177214e-ce7c-49e3-99de-ff9721b26f63 — Commit 7ca33d66
Changed files
.../usage_tracking_permission_cubit.dart | 60 ++++++++++------------ 1 file changed, 28 insertions(+), 32 deletions(-)
Diff
diff --git a/comwell_key_app/lib/presentation/screens/onboarding/usage_tracking/usage_tracking_permission_cubit.dart b/comwell_key_app/lib/presentation/screens/onboarding/usage_tracking/usage_tracking_permission_cubit.dart
index 5e2db04f..912993de 100644
--- a/comwell_key_app/lib/presentation/screens/onboarding/usage_tracking/usage_tracking_permission_cubit.dart
+++ b/comwell_key_app/lib/presentation/screens/onboarding/usage_tracking/usage_tracking_permission_cubit.dart
@@ -18,44 +18,40 @@ class UsageTrackingPermissionCubit extends BaseCubit<UsageTrackingPermissionStat
final bool isOnboarding;
final ComwellPreferences _preferences;
- void init() async {
- await _preferences.setOnboardingHasSeenUsageTracking();
-
- /// The system prompt will only show a limited number of times to prevent "eager" UX.
- /// However UX can get frustrating if we do not react their input. As such, we listen
- /// to the amount of clicks on the toggle. If counter >= 3 then we open the app settings.
- int _clickCounter = 0;
+ /// The system prompt will only show a limited number of times to prevent "eager" UX.
+ /// However UX can get frustrating if we do not react their input. As such, we listen
+ /// to the amount of clicks on the toggle. If counter >= 3 then we open the app settings.
+ int _clickCounter = 0;
- Future<void> init() async {
- if (isOnboarding) {
- await _preferences.setOnboardingHasSeenUsageTracking();
- }
+ void init() async {
+ if (isOnboarding) {
+ await _preferences.setOnboardingHasSeenUsageTracking();
}
+ }
- Future<bool> confirm() async {
- if (Platform.isIOS) {
- return _requestPermission();
- } else {
- return true;
- }
+ Future<bool> confirm() async {
+ if (Platform.isIOS) {
+ return _requestPermission();
+ } else {
+ return true;
}
+ }
- Future<bool> _requestPermission() async {
- final initialStatus = await AppTrackingTransparency.trackingAuthorizationStatus;
- _clickCounter++;
- safeEmit(state.copyWith(isLoading: true));
- if (_clickCounter >= 3) {
- await AppSettings.openAppSettings(type: AppSettingsType.settings);
- } else if (isOnboarding) {
- return true;
- } else {
- await AppSettings.openAppSettings(type: AppSettingsType.settings);
- }
- safeEmit(state.copyWith(isLoading: false));
- final updatedStatus = await AppTrackingTransparency.trackingAuthorizationStatus;
- // used to check in settings if rationale should pop
- return initialStatus != updatedStatus;
+ Future<bool> _requestPermission() async {
+ final initialStatus = await AppTrackingTransparency.trackingAuthorizationStatus;
+ _clickCounter++;
+ safeEmit(state.copyWith(isLoading: true));
+ if (_clickCounter >= 3) {
+ await AppSettings.openAppSettings(type: AppSettingsType.settings);
+ } else if (isOnboarding) {
+ return true;
+ } else {
+ await AppSettings.openAppSettings(type: AppSettingsType.settings);
}
+ safeEmit(state.copyWith(isLoading: false));
+ final updatedStatus = await AppTrackingTransparency.trackingAuthorizationStatus;
+ // used to check in settings if rationale should pop
+ return initialStatus != updatedStatus;
}
}