diff --git a/app/src/main/java/com/aurora/store/view/ui/onboarding/OnboardingFragment.kt b/app/src/main/java/com/aurora/store/view/ui/onboarding/OnboardingFragment.kt index 43d458aa8..e28213454 100644 --- a/app/src/main/java/com/aurora/store/view/ui/onboarding/OnboardingFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/onboarding/OnboardingFragment.kt @@ -74,7 +74,7 @@ class OnboardingFragment : BaseFragment() { override fun createFragment(position: Int): Fragment { when (position) { 0 -> return WelcomeFragment() - 1 -> return PermissionsFragment() + 1 -> return PermissionsFragment.newInstance() 2 -> return AppLinksFragment() } return Fragment() diff --git a/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt b/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt index 98dd99378..41ad637cb 100644 --- a/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/onboarding/PermissionsFragment.kt @@ -22,6 +22,10 @@ package com.aurora.store.view.ui.onboarding import android.os.Bundle import android.view.View +import androidx.core.os.bundleOf +import androidx.core.view.isVisible +import androidx.navigation.fragment.findNavController +import androidx.navigation.fragment.navArgs import com.aurora.extensions.isMAndAbove import com.aurora.extensions.isOAndAbove import com.aurora.extensions.isRAndAbove @@ -39,8 +43,27 @@ import dagger.hilt.android.AndroidEntryPoint @AndroidEntryPoint class PermissionsFragment : BaseFragment() { + private val args: PermissionsFragmentArgs by navArgs() + + companion object { + fun newInstance(isOnboarding: Boolean = true): PermissionsFragment { + return PermissionsFragment().apply { + arguments = bundleOf("isOnboarding" to isOnboarding) + } + } + } + override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) + + // Headers are only visible if we are onboarding + binding.title?.isVisible = args.isOnboarding + binding.subtitle?.isVisible = args.isOnboarding + binding.toolbar?.apply { + isVisible = !args.isOnboarding + setNavigationOnClickListener { findNavController().navigateUp() } + } + updateController() } diff --git a/app/src/main/java/com/aurora/store/view/ui/preferences/SettingsFragment.kt b/app/src/main/java/com/aurora/store/view/ui/preferences/SettingsFragment.kt index efd8b043e..a8c9ffc7c 100644 --- a/app/src/main/java/com/aurora/store/view/ui/preferences/SettingsFragment.kt +++ b/app/src/main/java/com/aurora/store/view/ui/preferences/SettingsFragment.kt @@ -34,6 +34,12 @@ class SettingsFragment : PreferenceFragmentCompat() { override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) { setPreferencesFromResource(R.xml.preferences_settings, rootKey) + findPreference("pref_perms")?.setOnPreferenceClickListener { + findNavController().navigate( + SettingsFragmentDirections.actionSettingsFragmentToPermissionsFragment(false) + ) + true + } findPreference("pref_install")?.setOnPreferenceClickListener { findNavController().navigate(R.id.installationPreference) true diff --git a/app/src/main/res/drawable/ic_list_check.xml b/app/src/main/res/drawable/ic_list_check.xml new file mode 100644 index 000000000..40a1734da --- /dev/null +++ b/app/src/main/res/drawable/ic_list_check.xml @@ -0,0 +1,11 @@ + + + + diff --git a/app/src/main/res/layout/fragment_onboarding_permissions.xml b/app/src/main/res/layout/fragment_onboarding_permissions.xml index 8ca551937..f40132a5f 100644 --- a/app/src/main/res/layout/fragment_onboarding_permissions.xml +++ b/app/src/main/res/layout/fragment_onboarding_permissions.xml @@ -20,6 +20,7 @@ --> + + + tools:layout="@layout/fragment_setting" > + + + + + + +