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 {
|
override fun createFragment(position: Int): Fragment {
|
||||||
when (position) {
|
when (position) {
|
||||||
0 -> return WelcomeFragment()
|
0 -> return WelcomeFragment()
|
||||||
1 -> return PermissionsFragment()
|
1 -> return PermissionsFragment.newInstance()
|
||||||
2 -> return AppLinksFragment()
|
2 -> return AppLinksFragment()
|
||||||
}
|
}
|
||||||
return Fragment()
|
return Fragment()
|
||||||
|
|||||||
@@ -22,6 +22,10 @@ package com.aurora.store.view.ui.onboarding
|
|||||||
|
|
||||||
import android.os.Bundle
|
import android.os.Bundle
|
||||||
import android.view.View
|
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.isMAndAbove
|
||||||
import com.aurora.extensions.isOAndAbove
|
import com.aurora.extensions.isOAndAbove
|
||||||
import com.aurora.extensions.isRAndAbove
|
import com.aurora.extensions.isRAndAbove
|
||||||
@@ -39,8 +43,27 @@ import dagger.hilt.android.AndroidEntryPoint
|
|||||||
@AndroidEntryPoint
|
@AndroidEntryPoint
|
||||||
class PermissionsFragment : BaseFragment<FragmentOnboardingPermissionsBinding>() {
|
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?) {
|
override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
|
||||||
super.onViewCreated(view, savedInstanceState)
|
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()
|
updateController()
|
||||||
}
|
}
|
||||||
|
|
||||||
|
|||||||
@@ -34,6 +34,12 @@ class SettingsFragment : PreferenceFragmentCompat() {
|
|||||||
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
override fun onCreatePreferences(savedInstanceState: Bundle?, rootKey: String?) {
|
||||||
setPreferencesFromResource(R.xml.preferences_settings, rootKey)
|
setPreferencesFromResource(R.xml.preferences_settings, rootKey)
|
||||||
|
|
||||||
|
findPreference<Preference>("pref_perms")?.setOnPreferenceClickListener {
|
||||||
|
findNavController().navigate(
|
||||||
|
SettingsFragmentDirections.actionSettingsFragmentToPermissionsFragment(false)
|
||||||
|
)
|
||||||
|
true
|
||||||
|
}
|
||||||
findPreference<Preference>("pref_install")?.setOnPreferenceClickListener {
|
findPreference<Preference>("pref_install")?.setOnPreferenceClickListener {
|
||||||
findNavController().navigate(R.id.installationPreference)
|
findNavController().navigate(R.id.installationPreference)
|
||||||
true
|
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"
|
<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"
|
xmlns:tools="http://schemas.android.com/tools"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="match_parent"
|
android:layout_height="match_parent"
|
||||||
@@ -27,7 +28,17 @@
|
|||||||
android:orientation="vertical"
|
android:orientation="vertical"
|
||||||
android:showDividers="middle">
|
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
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/title"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
android:includeFontPadding="true"
|
android:includeFontPadding="true"
|
||||||
@@ -39,6 +50,7 @@
|
|||||||
android:textSize="42sp" />
|
android:textSize="42sp" />
|
||||||
|
|
||||||
<androidx.appcompat.widget.AppCompatTextView
|
<androidx.appcompat.widget.AppCompatTextView
|
||||||
|
android:id="@+id/subtitle"
|
||||||
style="@style/AuroraTextStyle.Subtitle.Alt"
|
style="@style/AuroraTextStyle.Subtitle.Alt"
|
||||||
android:layout_width="match_parent"
|
android:layout_width="match_parent"
|
||||||
android:layout_height="wrap_content"
|
android:layout_height="wrap_content"
|
||||||
|
|||||||
@@ -96,7 +96,11 @@
|
|||||||
android:id="@+id/settingsFragment"
|
android:id="@+id/settingsFragment"
|
||||||
android:name="com.aurora.store.view.ui.preferences.SettingsFragment"
|
android:name="com.aurora.store.view.ui.preferences.SettingsFragment"
|
||||||
android:label="@string/title_settings"
|
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
|
<fragment
|
||||||
android:id="@+id/installationPreference"
|
android:id="@+id/installationPreference"
|
||||||
android:name="com.aurora.store.view.ui.preferences.InstallationPreference"
|
android:name="com.aurora.store.view.ui.preferences.InstallationPreference"
|
||||||
@@ -362,6 +366,16 @@
|
|||||||
android:id="@+id/action_dispenserFragment_to_removeDispenserDialog"
|
android:id="@+id/action_dispenserFragment_to_removeDispenserDialog"
|
||||||
app:destination="@id/removeDispenserDialog" />
|
app:destination="@id/removeDispenserDialog" />
|
||||||
</fragment>
|
</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
|
<dialog
|
||||||
android:id="@+id/appMenuSheet"
|
android:id="@+id/appMenuSheet"
|
||||||
android:name="com.aurora.store.view.ui.sheets.AppMenuSheet"
|
android:name="com.aurora.store.view.ui.sheets.AppMenuSheet"
|
||||||
|
|||||||
@@ -19,6 +19,13 @@
|
|||||||
|
|
||||||
<PreferenceScreen xmlns:app="http://schemas.android.com/apk/res-auto">
|
<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
|
<Preference
|
||||||
app:icon="@drawable/ic_installation"
|
app:icon="@drawable/ic_installation"
|
||||||
app:iconSpaceReserved="false"
|
app:iconSpaceReserved="false"
|
||||||
|
|||||||
Reference in New Issue
Block a user