SettingsFragment: Add preference for permissions fragment
Signed-off-by: Aayush Gupta <aayushgupta219@gmail.com>
This commit is contained in:
@@ -74,7 +74,7 @@ class OnboardingFragment : BaseFragment<FragmentOnboardingBinding>() {
|
||||
override fun createFragment(position: Int): Fragment {
|
||||
when (position) {
|
||||
0 -> return WelcomeFragment()
|
||||
1 -> return PermissionsFragment()
|
||||
1 -> return PermissionsFragment.newInstance()
|
||||
2 -> return AppLinksFragment()
|
||||
}
|
||||
return Fragment()
|
||||
|
||||
@@ -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<FragmentOnboardingPermissionsBinding>() {
|
||||
|
||||
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()
|
||||
}
|
||||
|
||||
|
||||
@@ -34,6 +34,12 @@ class SettingsFragment : PreferenceFragmentCompat() {
|
||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||
setPreferencesFromResource(R.xml.preferences_settings, rootKey)
|
||||
|
||||
findPreference<Preference>("pref_perms")?.setOnPreferenceClickListener {
|
||||
findNavController().navigate(
|
||||
SettingsFragmentDirections.actionSettingsFragmentToPermissionsFragment(false)
|
||||
)
|
||||
true
|
||||
}
|
||||
findPreference<Preference>("pref_install")?.setOnPreferenceClickListener {
|
||||
findNavController().navigate(R.id.installationPreference)
|
||||
true
|
||||
|
||||
11
app/src/main/res/drawable/ic_list_check.xml
Normal file
11
app/src/main/res/drawable/ic_list_check.xml
Normal file
@@ -0,0 +1,11 @@
|
||||
<?xml version="1.0" encoding="utf-8"?>
|
||||
<vector xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
android:width="24dp"
|
||||
android:height="24dp"
|
||||
android:viewportWidth="960"
|
||||
android:viewportHeight="960"
|
||||
android:tint="?attr/colorControlNormal">
|
||||
<path
|
||||
android:fillColor="@android:color/white"
|
||||
android:pathData="M120,640L120,560L440,560L440,640L120,640ZM120,480L120,400L600,400L600,480L120,480ZM120,320L120,240L600,240L600,320L120,320ZM654,760L512,618L568,562L654,646L824,476L880,534L654,760Z"/>
|
||||
</vector>
|
||||
@@ -20,6 +20,7 @@
|
||||
-->
|
||||
|
||||
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
|
||||
xmlns:app="http://schemas.android.com/apk/res-auto"
|
||||
xmlns:tools="http://schemas.android.com/tools"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="match_parent"
|
||||
@@ -27,7 +28,17 @@
|
||||
android:orientation="vertical"
|
||||
android:showDividers="middle">
|
||||
|
||||
<androidx.appcompat.widget.Toolbar
|
||||
android:id="@+id/toolbar"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:minHeight="?attr/actionBarSize"
|
||||
android:visibility="gone"
|
||||
app:navigationIcon="@drawable/ic_arrow_back"
|
||||
app:title="@string/onboarding_title_permissions" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/title"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
android:includeFontPadding="true"
|
||||
@@ -39,6 +50,7 @@
|
||||
android:textSize="42sp" />
|
||||
|
||||
<androidx.appcompat.widget.AppCompatTextView
|
||||
android:id="@+id/subtitle"
|
||||
style="@style/AuroraTextStyle.Subtitle.Alt"
|
||||
android:layout_width="match_parent"
|
||||
android:layout_height="wrap_content"
|
||||
|
||||
@@ -96,7 +96,11 @@
|
||||
android:id="@+id/settingsFragment"
|
||||
android:name="com.aurora.store.view.ui.preferences.SettingsFragment"
|
||||
android:label="@string/title_settings"
|
||||
tools:layout="@layout/fragment_setting" />
|
||||
tools:layout="@layout/fragment_setting" >
|
||||
<action
|
||||
android:id="@+id/action_settingsFragment_to_permissionsFragment"
|
||||
app:destination="@id/permissionsFragment" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/installationPreference"
|
||||
android:name="com.aurora.store.view.ui.preferences.InstallationPreference"
|
||||
@@ -362,6 +366,16 @@
|
||||
android:id="@+id/action_dispenserFragment_to_removeDispenserDialog"
|
||||
app:destination="@id/removeDispenserDialog" />
|
||||
</fragment>
|
||||
<fragment
|
||||
android:id="@+id/permissionsFragment"
|
||||
android:name="com.aurora.store.view.ui.onboarding.PermissionsFragment"
|
||||
android:label="PermissionsFragment"
|
||||
tools:layout="@layout/fragment_onboarding_permissions">
|
||||
<argument
|
||||
android:name="isOnboarding"
|
||||
android:defaultValue="true"
|
||||
app:argType="boolean" />
|
||||
</fragment>
|
||||
<dialog
|
||||
android:id="@+id/appMenuSheet"
|
||||
android:name="com.aurora.store.view.ui.sheets.AppMenuSheet"
|
||||
|
||||
@@ -19,6 +19,13 @@
|
||||
|
||||
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
|
||||
|
||||
<Preference
|
||||
app:icon="@drawable/ic_list_check"
|
||||
app:iconSpaceReserved="false"
|
||||
app:key="pref_perms"
|
||||
app:layout="@layout/item_preference"
|
||||
app:title="@string/onboarding_title_permissions" />
|
||||
|
||||
<Preference
|
||||
app:icon="@drawable/ic_installation"
|
||||
app:iconSpaceReserved="false"
|
||||
|
||||
Reference in New Issue
Block a user