diff --git a/app/src/main/AndroidManifest.xml b/app/src/main/AndroidManifest.xml
index b264b02cf..d1bbdd945 100644
--- a/app/src/main/AndroidManifest.xml
+++ b/app/src/main/AndroidManifest.xml
@@ -120,7 +120,7 @@
@@ -133,7 +133,7 @@
R.string.personalize
R.id.themeSettingsFragment -> R.string.general_settings_title
R.id.aboutActivity -> R.string.action_about
+ R.id.backup_restore_settings -> R.string.backup_restore_title
else -> R.id.action_settings
}
return getString(idRes)
diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/backup/BackupActivity.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/backup/BackupFragment.kt
similarity index 57%
rename from app/src/main/java/code/name/monkey/retromusic/activities/backup/BackupActivity.kt
rename to app/src/main/java/code/name/monkey/retromusic/fragments/backup/BackupFragment.kt
index 39f13f784..72235172c 100644
--- a/app/src/main/java/code/name/monkey/retromusic/activities/backup/BackupActivity.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/fragments/backup/BackupFragment.kt
@@ -1,36 +1,31 @@
-package code.name.monkey.retromusic.activities.backup
+package code.name.monkey.retromusic.fragments.backup
import android.os.Bundle
-import android.widget.Toast
-import androidx.activity.viewModels
+import android.view.View
import androidx.core.view.isVisible
+import androidx.fragment.app.Fragment
+import androidx.fragment.app.viewModels
import androidx.lifecycle.lifecycleScope
import androidx.recyclerview.widget.LinearLayoutManager
import androidx.recyclerview.widget.RecyclerView
import code.name.monkey.retromusic.R
-import code.name.monkey.retromusic.activities.base.AbsThemeActivity
import code.name.monkey.retromusic.adapter.backup.BackupAdapter
-import code.name.monkey.retromusic.databinding.ActivityBackupBinding
+import code.name.monkey.retromusic.databinding.FragmentBackupBinding
import code.name.monkey.retromusic.helper.BackupHelper
-import com.google.android.material.shape.MaterialShapeDrawable
-import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.launch
-import kotlinx.coroutines.withContext
import java.io.File
-class BackupActivity : AbsThemeActivity(), BackupAdapter.BackupClickedListener {
+class BackupFragment : Fragment(R.layout.fragment_backup), BackupAdapter.BackupClickedListener {
private val backupViewModel by viewModels()
private var backupAdapter: BackupAdapter? = null
- lateinit var binding: ActivityBackupBinding
- override fun onCreate(savedInstanceState: Bundle?) {
- super.onCreate(savedInstanceState)
- binding = ActivityBackupBinding.inflate(layoutInflater)
- setContentView(binding.root)
- binding.appBarLayout.statusBarForeground =
- MaterialShapeDrawable.createWithElevationOverlay(this)
- binding.toolbar.setNavigationIcon(R.drawable.ic_keyboard_backspace_black)
+ private var _binding: FragmentBackupBinding? = null
+ private val binding get() = _binding!!
+
+ override fun onViewCreated(view: View, savedInstanceState: Bundle?) {
+ super.onViewCreated(view, savedInstanceState)
+ _binding = FragmentBackupBinding.bind(view)
initAdapter()
setupRecyclerview()
backupViewModel.backupsLiveData.observe(this) {
@@ -46,21 +41,14 @@ class BackupActivity : AbsThemeActivity(), BackupAdapter.BackupClickedListener {
private fun setupButtons() {
binding.createBackup.setOnClickListener {
lifecycleScope.launch {
- BackupHelper.createBackup(this@BackupActivity)
+ BackupHelper.createBackup(requireContext())
backupViewModel.loadBackups()
- withContext(Dispatchers.Main) {
- Toast.makeText(
- this@BackupActivity,
- "Backup Completed Successfully",
- Toast.LENGTH_SHORT
- ).show()
- }
}
}
}
private fun initAdapter() {
- backupAdapter = BackupAdapter(this@BackupActivity, ArrayList(), this)
+ backupAdapter = BackupAdapter(requireContext(), ArrayList(), this)
backupAdapter?.registerAdapterDataObserver(object : RecyclerView.AdapterDataObserver() {
override fun onChanged() {
super.onChanged()
@@ -86,7 +74,7 @@ class BackupActivity : AbsThemeActivity(), BackupAdapter.BackupClickedListener {
override fun onBackupClicked(file: File) {
lifecycleScope.launch {
- backupViewModel.restoreBackup(this@BackupActivity, file)
+ backupViewModel.restoreBackup(requireActivity(), file)
}
}
}
\ No newline at end of file
diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/backup/BackupViewModel.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/backup/BackupViewModel.kt
similarity index 95%
rename from app/src/main/java/code/name/monkey/retromusic/activities/backup/BackupViewModel.kt
rename to app/src/main/java/code/name/monkey/retromusic/fragments/backup/BackupViewModel.kt
index 00cdffef9..09f18df62 100644
--- a/app/src/main/java/code/name/monkey/retromusic/activities/backup/BackupViewModel.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/fragments/backup/BackupViewModel.kt
@@ -1,4 +1,4 @@
-package code.name.monkey.retromusic.activities.backup
+package code.name.monkey.retromusic.fragments.backup
import android.app.Activity
import android.content.Intent
diff --git a/app/src/main/java/code/name/monkey/retromusic/activities/backup/RestoreActivity.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/backup/RestoreActivity.kt
similarity index 85%
rename from app/src/main/java/code/name/monkey/retromusic/activities/backup/RestoreActivity.kt
rename to app/src/main/java/code/name/monkey/retromusic/fragments/backup/RestoreActivity.kt
index 6caabf7ff..f54e697c2 100644
--- a/app/src/main/java/code/name/monkey/retromusic/activities/backup/RestoreActivity.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/fragments/backup/RestoreActivity.kt
@@ -1,4 +1,4 @@
-package code.name.monkey.retromusic.activities.backup
+package code.name.monkey.retromusic.fragments.backup
import android.os.Bundle
import androidx.appcompat.app.AppCompatActivity
diff --git a/app/src/main/java/code/name/monkey/retromusic/fragments/settings/MainSettingsFragment.kt b/app/src/main/java/code/name/monkey/retromusic/fragments/settings/MainSettingsFragment.kt
index c8ecf904a..c507a259d 100644
--- a/app/src/main/java/code/name/monkey/retromusic/fragments/settings/MainSettingsFragment.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/fragments/settings/MainSettingsFragment.kt
@@ -45,7 +45,7 @@ class MainSettingsFragment : Fragment(), View.OnClickListener {
R.id.otherSettings -> findNavController().navigate(R.id.action_mainSettingsFragment_to_otherSettingsFragment)
R.id.aboutSettings -> findNavController().navigate(R.id.action_mainSettingsFragment_to_aboutActivity)
R.id.nowPlayingSettings -> findNavController().navigate(R.id.action_mainSettingsFragment_to_nowPlayingSettingsFragment)
- R.id.backup_restore_settings -> NavigationUtil.gotoBackup(requireActivity())
+ R.id.backup_restore_settings -> findNavController().navigate(R.id.action_mainSettingsFragment_to_backupFragment)
}
}
diff --git a/app/src/main/java/code/name/monkey/retromusic/util/NavigationUtil.kt b/app/src/main/java/code/name/monkey/retromusic/util/NavigationUtil.kt
index b0a140774..ffba5bdd3 100755
--- a/app/src/main/java/code/name/monkey/retromusic/util/NavigationUtil.kt
+++ b/app/src/main/java/code/name/monkey/retromusic/util/NavigationUtil.kt
@@ -23,7 +23,6 @@ import androidx.core.app.ActivityCompat
import androidx.navigation.findNavController
import code.name.monkey.retromusic.R
import code.name.monkey.retromusic.activities.*
-import code.name.monkey.retromusic.activities.backup.BackupActivity
import code.name.monkey.retromusic.activities.bugreport.BugReportActivity
import code.name.monkey.retromusic.helper.MusicPlayerRemote.audioSessionId
import com.google.android.material.bottomsheet.BottomSheetBehavior
@@ -78,10 +77,6 @@ object NavigationUtil {
ActivityCompat.startActivity(activity, Intent(activity, WhatsNewActivity::class.java), null)
}
- fun gotoBackup(activity: Activity) {
- ActivityCompat.startActivity(activity, Intent(activity, BackupActivity::class.java), null)
- }
-
fun openEqualizer(activity: Activity) {
stockEqualizer(activity)
}
diff --git a/app/src/main/res/layout/activity_backup.xml b/app/src/main/res/layout/activity_backup.xml
deleted file mode 100644
index 1bd0ae067..000000000
--- a/app/src/main/res/layout/activity_backup.xml
+++ /dev/null
@@ -1,139 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/res/layout/activity_restore.xml b/app/src/main/res/layout/activity_restore.xml
index 273ec1089..79eda3368 100644
--- a/app/src/main/res/layout/activity_restore.xml
+++ b/app/src/main/res/layout/activity_restore.xml
@@ -3,6 +3,6 @@
xmlns:tools="http://schemas.android.com/tools"
android:layout_width="match_parent"
android:layout_height="match_parent"
- tools:context=".activities.backup.RestoreActivity">
+ tools:context=".fragments.backup.RestoreActivity">
\ No newline at end of file
diff --git a/app/src/main/res/layout/fragment_backup.xml b/app/src/main/res/layout/fragment_backup.xml
new file mode 100644
index 000000000..33ded9932
--- /dev/null
+++ b/app/src/main/res/layout/fragment_backup.xml
@@ -0,0 +1,98 @@
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
+
\ No newline at end of file
diff --git a/app/src/main/res/navigation/settings_graph.xml b/app/src/main/res/navigation/settings_graph.xml
index 725feda1f..70dffca0f 100644
--- a/app/src/main/res/navigation/settings_graph.xml
+++ b/app/src/main/res/navigation/settings_graph.xml
@@ -74,6 +74,15 @@
app:launchSingleTop="true"
app:popEnterAnim="@anim/retro_fragment_close_enter"
app:popExitAnim="@anim/retro_fragment_close_exit" />
+
+
+
+
\ No newline at end of file