diff --git a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt index 6c6f7e4090..2241985e26 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/data/preference/PreferencesHelper.kt @@ -23,17 +23,17 @@ fun Preference.invert(): Boolean = getOrDefault().let { set(!it); !it } private class DateFormatConverter : Preference.Adapter { override fun get(key: String, preferences: SharedPreferences): DateFormat { - var dateFormat = preferences.getString(Keys.dateFormat, "") + val dateFormat = preferences.getString(Keys.dateFormat, "")!! if (dateFormat != "") { - return SimpleDateFormat(dateFormat) + return SimpleDateFormat(dateFormat, Locale.getDefault()) } return DateFormat.getDateInstance(DateFormat.SHORT) } override fun set(key: String, value: DateFormat, editor: SharedPreferences.Editor) { - TODO("not implemented") + // No-op } } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoController.kt index fa94084ccc..9c77615287 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/manga/info/MangaInfoController.kt @@ -114,7 +114,9 @@ class MangaInfoController : NucleusController(), var fullRes:Drawable? = null - private val dateFormat: DateFormat = preferences.dateFormat().getOrDefault() + private val dateFormat: DateFormat by lazy { + preferences.dateFormat().getOrDefault() + } init { setHasOptionsMenu(true) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/recently_read/RecentlyReadHolder.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/recently_read/RecentlyReadHolder.kt index 253535a3d6..89e54d4895 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/recently_read/RecentlyReadHolder.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/recently_read/RecentlyReadHolder.kt @@ -8,8 +8,8 @@ import eu.kanade.tachiyomi.R import eu.kanade.tachiyomi.data.database.models.MangaChapterHistory import eu.kanade.tachiyomi.data.glide.GlideApp import eu.kanade.tachiyomi.ui.base.holder.BaseFlexibleViewHolder +import eu.kanade.tachiyomi.util.toTimestampString import kotlinx.android.synthetic.main.recently_read_item.* -import java.text.DateFormat import java.util.Date import kotlin.math.max @@ -69,10 +69,8 @@ class RecentlyReadHolder( manga_source.text = itemView.context.getString(R.string.recent_manga_source) .format(adapter.sourceManager.getOrStub(manga.source).toString(), formattedNumber) - val date = adapter.dateFormat.format(Date(history.last_read)) - val time = DateFormat.getTimeInstance(DateFormat.SHORT).format(Date(history.last_read)) // Set last read timestamp title - last_read.text = "$date $time" + last_read.text = Date(history.last_read).toTimestampString(adapter.dateFormat) // Set cover GlideApp.with(itemView.context).clear(cover) diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAboutController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAboutController.kt index c1e497cabb..03622f7d5f 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAboutController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsAboutController.kt @@ -17,6 +17,7 @@ import eu.kanade.tachiyomi.data.updater.UpdaterService import eu.kanade.tachiyomi.ui.base.controller.DialogController import eu.kanade.tachiyomi.ui.main.ChangelogDialogController import eu.kanade.tachiyomi.util.system.toast +import eu.kanade.tachiyomi.util.lang.toTimestampString import rx.Subscription import rx.android.schedulers.AndroidSchedulers import rx.schedulers.Schedulers @@ -35,7 +36,6 @@ class SettingsAboutController : SettingsController() { */ private val updateChecker by lazy { UpdateChecker.getUpdateChecker() } - private val userPreferences: PreferencesHelper by injectLazy() private val dateFormat: DateFormat = userPreferences.dateFormat().getOrDefault() @@ -165,9 +165,7 @@ class SettingsAboutController : SettingsController() { inputDf.timeZone = TimeZone.getTimeZone("UTC") val buildTime = inputDf.parse(BuildConfig.BUILD_TIME) ?: return BuildConfig.BUILD_TIME - val date = dateFormat.format(buildTime) - val time = DateFormat.getTimeInstance(DateFormat.SHORT).format(buildTime) - return "$date $time" + return buildTime.toTimestampString(dateFormat) } catch (e: ParseException) { return BuildConfig.BUILD_TIME } diff --git a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt index fe1c655e6c..25929b4901 100644 --- a/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt +++ b/app/src/main/java/eu/kanade/tachiyomi/ui/setting/SettingsGeneralController.kt @@ -67,7 +67,7 @@ class SettingsGeneralController : SettingsController() { } } defaultValue = "" - summary= "%s" + summary = "%s" } intListPreference(activity) { key = Keys.startScreen