From 80d565dd06515665fdee96c259a5b63daf0bcc01 Mon Sep 17 00:00:00 2001 From: Yair Morgenstern Date: Sun, 29 Sep 2024 23:53:00 +0300 Subject: [PATCH] Homework from @SomeTroglodyte - Remove lastOverviewPage and replace with persistState.last (#12248) --- core/src/com/unciv/models/metadata/GameSettings.kt | 3 --- .../com/unciv/models/metadata/OverviewPersistableData.kt | 1 - .../ui/screens/overviewscreen/EmpireOverviewCategories.kt | 3 +-- .../ui/screens/overviewscreen/EmpireOverviewScreen.kt | 8 ++------ .../unciv/ui/screens/overviewscreen/EmpireOverviewTab.kt | 2 -- 5 files changed, 3 insertions(+), 14 deletions(-) diff --git a/core/src/com/unciv/models/metadata/GameSettings.kt b/core/src/com/unciv/models/metadata/GameSettings.kt index aa5821de6b..8a817ede95 100644 --- a/core/src/com/unciv/models/metadata/GameSettings.kt +++ b/core/src/com/unciv/models/metadata/GameSettings.kt @@ -101,9 +101,6 @@ class GameSettings { var autoPlay = GameSettingsAutoPlay() - // This is a string not an enum so if tabs change it won't screw up the json serialization - //TODO remove line in a future update - var lastOverviewPage = EmpireOverviewCategories.Cities.name /** Holds EmpireOverviewScreen per-page persistable states */ val overview = OverviewPersistableData() diff --git a/core/src/com/unciv/models/metadata/OverviewPersistableData.kt b/core/src/com/unciv/models/metadata/OverviewPersistableData.kt index d395026f80..6392126499 100644 --- a/core/src/com/unciv/models/metadata/OverviewPersistableData.kt +++ b/core/src/com/unciv/models/metadata/OverviewPersistableData.kt @@ -11,7 +11,6 @@ class OverviewPersistableData( ) : Json.Serializable, Map by map { - //todo so far this is saved but not used, should replace [GameSettings.lastOverviewPage] in a future update. var last: EmpireOverviewCategories = EmpireOverviewCategories.Cities fun update(pageObjects: Map) { diff --git a/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewCategories.kt b/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewCategories.kt index 602d622015..d66a25a341 100644 --- a/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewCategories.kt +++ b/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewCategories.kt @@ -11,8 +11,7 @@ import com.unciv.ui.screens.overviewscreen.EmpireOverviewTab.EmpireOverviewTabPe * * To add a Tab, build a new [EmpireOverviewTab] subclass and fill out a new entry here, that's all. * Note the enum value's name is used as Tab caption, so if you ever need a non-alphanumeric caption - * please redesign to include a property for the caption - and don't forget GameSettings.lastOverviewPage - * currently looks for name when applied but uses tab caption when saving. + * please redesign to include a property for the caption */ enum class EmpireOverviewCategories( val iconName: String, diff --git a/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewScreen.kt b/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewScreen.kt index f73a0fabf2..d93184ca09 100644 --- a/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewScreen.kt +++ b/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewScreen.kt @@ -34,9 +34,7 @@ class EmpireOverviewScreen( override fun getCivilopediaRuleset() = viewingPlayer.gameInfo.ruleset init { - val selectCategory = defaultCategory - //TODO replace with `?: persistState.last` in a future update - ?: EmpireOverviewCategories.entries.firstOrNull { it.name == game.settings.lastOverviewPage } + val selectCategory = defaultCategory ?: persistState.last val iconSize = Constants.defaultFontSize.toFloat() tabbedPager = TabbedPager( @@ -76,9 +74,7 @@ class EmpireOverviewScreen( override fun recreate(): BaseScreen { tabbedPager.selectPage(-1) // trigger deselect on _old_ instance so the tabs can persist their stuff - return EmpireOverviewScreen(viewingPlayer, - //TODO replace with `persistState.last)` in a future update - EmpireOverviewCategories.entries.firstOrNull { it.name == game.settings.lastOverviewPage }) + return EmpireOverviewScreen(viewingPlayer, persistState.last) } fun resizePage(tab: EmpireOverviewTab) { diff --git a/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewTab.kt b/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewTab.kt index dd58f71470..1fd78941c2 100644 --- a/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewTab.kt +++ b/core/src/com/unciv/ui/screens/overviewscreen/EmpireOverviewTab.kt @@ -23,8 +23,6 @@ abstract class EmpireOverviewTab ( override fun activated(index: Int, caption: String, pager: TabbedPager) { if (caption.isEmpty()) return // called from EmpireOverviewScreen.resume() - //TODO remove line in a future update - overviewScreen.game.settings.lastOverviewPage = caption overviewScreen.persistState.last = EmpireOverviewCategories.entries.toTypedArray()[index] // Change this if categories are ever reordered or filtered }