[UI/Settings] Add build details dialog in About card.

This commit is contained in:
Kuba Szczodrzyński 2021-03-28 22:37:20 +02:00
parent fe90fc6442
commit 5242d15ebd
2 changed files with 19 additions and 0 deletions

View File

@ -18,6 +18,7 @@ import kotlinx.coroutines.launch
import pl.szczodrzynski.edziennik.App
import pl.szczodrzynski.edziennik.BuildConfig
import pl.szczodrzynski.edziennik.R
import pl.szczodrzynski.edziennik.after
import pl.szczodrzynski.edziennik.sync.UpdateWorker
import pl.szczodrzynski.edziennik.ui.dialogs.changelog.ChangelogDialog
import pl.szczodrzynski.edziennik.ui.modules.settings.SettingsCard
@ -51,6 +52,17 @@ class SettingsAboutCard(util: SettingsUtil) : SettingsCard(util), CoroutineScope
override fun getItems() = listOf<MaterialAboutItem>()
override fun getItemsMore() = listOf<MaterialAboutItem>()
private val versionDetailsItem by lazy {
util.createActionItem(
text = R.string.settings_about_version_details_text,
subText = R.string.settings_about_version_details_subtext,
icon = CommunityMaterial.Icon.cmd_cellphone_information,
onClick = { _ ->
app.buildManager.showVersionDialog(activity)
}
)
}
private fun getItems(card: MaterialAboutCard) = listOf(
util.createTitleItem(),
@ -58,6 +70,11 @@ class SettingsAboutCard(util: SettingsUtil) : SettingsCard(util), CoroutineScope
text = R.string.settings_about_version_text,
icon = CommunityMaterial.Icon2.cmd_information_outline,
onClick = { item ->
if (!card.items.contains(versionDetailsItem)) {
card.items.after(item, versionDetailsItem)
util.refresh()
}
clickCounter++
if (clickCounter < 7)
Toast.makeText(activity, "\uD83D\uDE02", Toast.LENGTH_SHORT).show()

View File

@ -1421,4 +1421,6 @@
<string name="build_invalid_debug">Korzystasz z kompilacji typu \"debug\". Ta informacja zostanie wyświetlona tylko jeden raz dla aktualnego urządzenia.</string>
<string name="build_valid_unofficial">Korzystasz z nieoficjalnej kompilacji aplikacji Szkolny.eu. Zalecamy używanie wyłącznie oficjalnych wersji aplikacji.\n\nOstatnie zmiany w tej wersji zostały wprowadzone przez %3$s w repozytorium %2$s (%1$s).\n\nTo okno nie wyświetli się ponownie.</string>
<string name="build_invalid_title">Informacja dotycząca wersji aplikacji</string>
<string name="settings_about_version_details_text">Szczegóły wersji</string>
<string name="settings_about_version_details_subtext">Informacje o kompilacji</string>
</resources>