diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt b/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt index a99917199..f4e4c54b2 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UILoadList.kt @@ -291,6 +291,12 @@ class UILoadList(val full: UILoadSavegame) : UICanvas() { return true } + internal fun resetScroll() { + scrollFrom = 0 + scrollTarget = 0 + scrollAnimCounter = 0f + } + override fun hide() { showCalled = false cellLoadThread.interrupt() diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt b/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt index 03544762e..03eb64dd0 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UILoadManage.kt @@ -75,6 +75,7 @@ class UILoadManage(val full: UILoadSavegame) : UICanvas() { private val mainBackButton = UIItemTextButton(this, { Lang["MENU_LABEL_BACK"] }, buttonXcentre, buttonRowY, buttonWidth, alignment = UIItemTextButton.Companion.Alignment.CENTRE, hasBorder = true).also { it.clickOnceListener = { _,_ -> + full.resetScroll() full.changePanelTo(0) } } diff --git a/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt b/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt index 5be74c17d..fe9542c5e 100644 --- a/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt +++ b/src/net/torvald/terrarum/modulebasegame/ui/UILoadSavegame.kt @@ -96,6 +96,10 @@ class UILoadSavegame(val remoCon: UIRemoCon) : Advanceable() { // internal fun bringAutosaveSelectorUp() { transitionPanel.setRightUIto(1) } // internal fun takeAutosaveSelectorDown() { transitionPanel.setRightUIto(0) } + internal fun resetScroll() { + transitionalListing.resetScroll() + } + internal fun changePanelTo(index: Int) { transitionPanel.requestTransition(index) }