Skip to content

Commit 2fd8dcf

Browse files
committed
Implemented autoBackup setup functions in SettingsActivity
1 parent 571ecfd commit 2fd8dcf

File tree

1 file changed

+43
-4
lines changed

1 file changed

+43
-4
lines changed

app/src/main/kotlin/com/simplemobiletools/notes/pro/activities/SettingsActivity.kt

Lines changed: 43 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -13,10 +13,8 @@ import com.simplemobiletools.commons.helpers.*
1313
import com.simplemobiletools.commons.models.RadioItem
1414
import com.simplemobiletools.notes.pro.R
1515
import com.simplemobiletools.notes.pro.dialogs.ExportNotesDialog
16-
import com.simplemobiletools.notes.pro.extensions.config
17-
import com.simplemobiletools.notes.pro.extensions.requestUnlockNotes
18-
import com.simplemobiletools.notes.pro.extensions.updateWidgets
19-
import com.simplemobiletools.notes.pro.extensions.widgetsDB
16+
import com.simplemobiletools.notes.pro.dialogs.ManageAutoBackupsDialog
17+
import com.simplemobiletools.notes.pro.extensions.*
2018
import com.simplemobiletools.notes.pro.helpers.*
2119
import com.simplemobiletools.notes.pro.models.Note
2220
import com.simplemobiletools.notes.pro.models.Widget
@@ -62,6 +60,8 @@ class SettingsActivity : SimpleActivity() {
6260
setupCustomizeWidgetColors()
6361
setupNotesExport()
6462
setupNotesImport()
63+
setupEnableAutomaticBackups()
64+
setupManageAutomaticBackups()
6565
updateTextColors(settings_nested_scrollview)
6666

6767
arrayOf(
@@ -356,4 +356,43 @@ class SettingsActivity : SimpleActivity() {
356356
showErrorToast(e)
357357
}
358358
}
359+
360+
private fun setupEnableAutomaticBackups() {
361+
settings_backups_label.beVisibleIf(isRPlus())
362+
settings_enable_automatic_backups_holder.beVisibleIf(isRPlus())
363+
settings_enable_automatic_backups.isChecked = config.autoBackup
364+
settings_enable_automatic_backups_holder.setOnClickListener {
365+
val wasBackupDisabled = !config.autoBackup
366+
if (wasBackupDisabled) {
367+
ManageAutoBackupsDialog(
368+
activity = this,
369+
onSuccess = {
370+
enableOrDisableAutomaticBackups(true)
371+
scheduleNextAutomaticBackup()
372+
}
373+
)
374+
} else {
375+
cancelScheduledAutomaticBackup()
376+
enableOrDisableAutomaticBackups(false)
377+
}
378+
}
379+
}
380+
381+
private fun setupManageAutomaticBackups() {
382+
settings_manage_automatic_backups_holder.beVisibleIf(isRPlus() && config.autoBackup)
383+
settings_manage_automatic_backups_holder.setOnClickListener {
384+
ManageAutoBackupsDialog(
385+
activity = this,
386+
onSuccess = {
387+
scheduleNextAutomaticBackup()
388+
}
389+
)
390+
}
391+
}
392+
393+
private fun enableOrDisableAutomaticBackups(enable: Boolean) {
394+
config.autoBackup = enable
395+
settings_enable_automatic_backups.isChecked = enable
396+
settings_manage_automatic_backups_holder.beVisibleIf(enable)
397+
}
359398
}

0 commit comments

Comments
 (0)