From 82ec033b0edd3bfb0dea703c195ddc0c8466044d Mon Sep 17 00:00:00 2001 From: Aayush Gupta Date: Sun, 30 Nov 2025 19:17:44 +0800 Subject: [PATCH] settings: Open compose permission rationale fragment from settings Signed-off-by: Aayush Gupta --- .../java/com/aurora/store/compose/navigation/NavDisplay.kt | 5 ++++- .../java/com/aurora/store/compose/navigation/Screen.kt | 4 +--- .../aurora/store/view/ui/preferences/SettingsFragment.kt | 7 ++++++- 3 files changed, 11 insertions(+), 5 deletions(-) diff --git a/app/src/main/java/com/aurora/store/compose/navigation/NavDisplay.kt b/app/src/main/java/com/aurora/store/compose/navigation/NavDisplay.kt index a2a23511a..4f9ee5374 100644 --- a/app/src/main/java/com/aurora/store/compose/navigation/NavDisplay.kt +++ b/app/src/main/java/com/aurora/store/compose/navigation/NavDisplay.kt @@ -79,7 +79,10 @@ fun NavDisplay(startDestination: NavKey) { } entry { screen -> - PermissionRationaleScreen(onNavigateUp = ::onNavigateUp) + PermissionRationaleScreen( + onNavigateUp = ::onNavigateUp, + requiredPermissions = screen.requiredPermissions + ) } entry { diff --git a/app/src/main/java/com/aurora/store/compose/navigation/Screen.kt b/app/src/main/java/com/aurora/store/compose/navigation/Screen.kt index 72b5099c3..21cdaf7a1 100644 --- a/app/src/main/java/com/aurora/store/compose/navigation/Screen.kt +++ b/app/src/main/java/com/aurora/store/compose/navigation/Screen.kt @@ -35,9 +35,7 @@ sealed class Screen : NavKey, Parcelable { data object Search : Screen() @Serializable - data class PermissionRationale( - val requiredPermissions: Set = emptySet() - ) : Screen() + data class PermissionRationale(val requiredPermissions: Set) : Screen() @Serializable data object Downloads : Screen() 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 312f8e81b..1f54ea573 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 @@ -25,7 +25,10 @@ import androidx.appcompat.widget.Toolbar import androidx.navigation.fragment.findNavController import androidx.preference.Preference import androidx.preference.PreferenceFragmentCompat +import com.aurora.extensions.navigate import com.aurora.store.R +import com.aurora.store.compose.navigation.Screen +import com.aurora.store.data.model.PermissionType import dagger.hilt.android.AndroidEntryPoint @AndroidEntryPoint @@ -35,7 +38,9 @@ class SettingsFragment : PreferenceFragmentCompat() { setPreferencesFromResource(R.xml.preferences_settings, rootKey) findPreference("pref_perms")?.setOnPreferenceClickListener { - TODO() + requireContext().navigate( + Screen.PermissionRationale(requiredPermissions = PermissionType.entries.toSet()) + ) true } findPreference("pref_install")?.setOnPreferenceClickListener {