diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/core/prefs/AppSettings.kt b/app/src/main/kotlin/org/koitharu/kotatsu/core/prefs/AppSettings.kt index 2e50100ad..52685ab9a 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/core/prefs/AppSettings.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/core/prefs/AppSettings.kt @@ -12,6 +12,7 @@ import androidx.appcompat.app.AppCompatDelegate import androidx.collection.ArraySet import androidx.core.content.edit import androidx.core.os.LocaleListCompat +import androidx.core.util.TimeUtils import androidx.documentfile.provider.DocumentFile import androidx.preference.PreferenceManager import dagger.hilt.android.qualifiers.ApplicationContext @@ -34,6 +35,7 @@ import org.koitharu.kotatsu.reader.domain.ReaderColorFilter import java.io.File import java.net.Proxy import java.util.EnumSet +import java.util.concurrent.TimeUnit import javax.inject.Inject import javax.inject.Singleton @@ -471,7 +473,7 @@ class AppSettings @Inject constructor(@ApplicationContext context: Context) { get() = prefs.getBoolean(KEY_BACKUP_PERIODICAL_ENABLED, false) val periodicalBackupFrequency: Long - get() = prefs.getString(KEY_BACKUP_PERIODICAL_FREQUENCY, null)?.toLongOrNull() ?: 7L + get() = TimeUnit.DAYS.toMillis(prefs.getString(KEY_BACKUP_PERIODICAL_FREQUENCY, null)?.toLongOrNull() ?: 7L) val periodicalBackupMaxCount: Int get() = prefs.getInt(KEY_BACKUP_PERIODICAL_COUNT, 10) diff --git a/app/src/main/kotlin/org/koitharu/kotatsu/settings/backup/PeriodicalBackupSettingsFragment.kt b/app/src/main/kotlin/org/koitharu/kotatsu/settings/backup/PeriodicalBackupSettingsFragment.kt index 3b39c2915..4e8e9ddb4 100644 --- a/app/src/main/kotlin/org/koitharu/kotatsu/settings/backup/PeriodicalBackupSettingsFragment.kt +++ b/app/src/main/kotlin/org/koitharu/kotatsu/settings/backup/PeriodicalBackupSettingsFragment.kt @@ -4,6 +4,7 @@ import android.content.Context import android.content.Intent import android.net.Uri import android.os.Bundle +import android.text.format.DateUtils import android.view.View import androidx.activity.result.ActivityResultCallback import androidx.activity.result.contract.ActivityResultContracts @@ -22,7 +23,6 @@ import org.koitharu.kotatsu.core.util.ext.resolveFile import org.koitharu.kotatsu.core.util.ext.tryLaunch import org.koitharu.kotatsu.core.util.ext.viewLifecycleScope import java.io.File -import java.text.SimpleDateFormat import javax.inject.Inject @AndroidEntryPoint @@ -60,6 +60,7 @@ class PeriodicalBackupSettingsFragment : BasePreferenceFragment(R.string.periodi context?.contentResolver?.takePersistableUriPermission(result, takeFlags) settings.periodicalBackupDirectory = result bindOutputSummary() + bindLastBackupInfo() } } @@ -82,8 +83,10 @@ class PeriodicalBackupSettingsFragment : BasePreferenceFragment(R.string.periodi backupStorage.getLastBackupDate() } preference.summary = lastDate?.let { - val formatter = SimpleDateFormat.getDateInstance(SimpleDateFormat.LONG) - preference.context.getString(R.string.last_successful_backup, formatter.format(it)) + preference.context.getString( + R.string.last_successful_backup, + DateUtils.getRelativeTimeSpanString(it.time), + ) } preference.isVisible = lastDate != null }