diff --git a/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/IdeSetupConfigurationFragment.kt b/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/IdeSetupConfigurationFragment.kt index 46ef6fb98..5858ad726 100644 --- a/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/IdeSetupConfigurationFragment.kt +++ b/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/IdeSetupConfigurationFragment.kt @@ -61,7 +61,12 @@ class IdeSetupConfigurationFragment : OnboardingFragment(), SlidePolicy { private var networkStateChangeCallback: NetworkCallback? = null companion object { - + + private const val MAX_DENIAL_COUNT = 3 + private var permissionDenyCount = 1 + private val isToSkipPermission: Boolean + get() = permissionDenyCount >= MAX_DENIAL_COUNT + @JvmStatic fun newInstance(context: Context): IdeSetupConfigurationFragment { return IdeSetupConfigurationFragment().also { @@ -226,9 +231,17 @@ class IdeSetupConfigurationFragment : OnboardingFragment(), SlidePolicy { } override val isPolicyRespected: Boolean - get() = getConnectionInfo(requireContext()).isConnected + get() { + if (isToSkipPermission) { + return true + } else { + return getConnectionInfo(requireContext()).isConnected + } + } + //getConnectionInfo(requireContext()).isConnected override fun onUserIllegallyRequestedNextPage() { + if (!isToSkipPermission) permissionDenyCount += 1 flashError(string.msg_no_internet) } @@ -288,5 +301,4 @@ class IdeSetupConfigurationFragment : OnboardingFragment(), SlidePolicy { backgroundDataRestrictionReceiver = null } } - } \ No newline at end of file diff --git a/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/PermissionsFragment.kt b/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/PermissionsFragment.kt index b33d75bc4..028e5f286 100644 --- a/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/PermissionsFragment.kt +++ b/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/PermissionsFragment.kt @@ -58,10 +58,12 @@ class PermissionsFragment : OnboardingMultiActionFragment(), SlidePolicy { } companion object { - - private var permissionDenyCount = 0 + private const val MAX_DENIAL_COUNT = 3 - + private var permissionDenyCount = 1 + private val isToSkipPermission: Boolean + get() = permissionDenyCount >= MAX_DENIAL_COUNT + @JvmStatic fun newInstance(context: Context): PermissionsFragment { return PermissionsFragment().apply { @@ -91,7 +93,7 @@ class PermissionsFragment : OnboardingMultiActionFragment(), SlidePolicy { @JvmStatic fun areAllPermissionsGranted(context: Context) : Boolean { - if (permissionDenyCount < MAX_DENIAL_COUNT) { + if (!isToSkipPermission) { return getRequiredPermissions(context).all { it.isGranted } } else { return true @@ -117,7 +119,7 @@ class PermissionsFragment : OnboardingMultiActionFragment(), SlidePolicy { @JvmStatic fun isPermissionGranted(context: Context, permission: String): Boolean { - if (permissionDenyCount < MAX_DENIAL_COUNT) { + if (!isToSkipPermission) { return when (permission) { Manifest.permission_group.STORAGE -> isStoragePermissionGranted(context) Manifest.permission.REQUEST_INSTALL_PACKAGES -> context.packageManager.canRequestPackageInstalls() @@ -171,7 +173,7 @@ class PermissionsFragment : OnboardingMultiActionFragment(), SlidePolicy { override val isPolicyRespected: Boolean get() { - if (permissionDenyCount < MAX_DENIAL_COUNT) { + if (!isToSkipPermission) { return permissions.all { it.isGranted } } else { return true @@ -179,7 +181,7 @@ class PermissionsFragment : OnboardingMultiActionFragment(), SlidePolicy { } override fun onUserIllegallyRequestedNextPage() { - permissionDenyCount+=1 + if (!isToSkipPermission) permissionDenyCount += 1 activity?.flashError(R.string.msg_grant_permissions) - } + } } \ No newline at end of file diff --git a/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/StatisticsFragment.kt b/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/StatisticsFragment.kt index 55f696708..403fe8f53 100644 --- a/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/StatisticsFragment.kt +++ b/core/app/src/main/java/com/itsaky/androidide/fragments/onboarding/StatisticsFragment.kt @@ -30,7 +30,8 @@ class StatisticsFragment : OnboardingFragment() { override fun createContentView(parent: ViewGroup, attachToParent: Boolean) { _content = LayoutOnboardingStatisticsBinding.inflate(layoutInflater, parent, attachToParent) - content.statOptIn.isChecked = true +// content.statOptIn.isChecked = true + content.statOptIn.isChecked = false } override fun onDestroy() {