User: kyle wood Date: 09 Aug 26 21:02 Revision: 0516217386a9dd75a96c94c3fa8f33edce86701f Summary: Fix empty template repo list issues Prevents template repos list from being set to empty, and automatically handles when the list ends up empty anyways. Fixes: 2517 TeamCity URL: http://ci.mcdev.io:80/viewModification.html?tab=vcsModificationFiles&modId=10603&personal=false Index: src/main/kotlin/MinecraftSettings.kt =================================================================== --- src/main/kotlin/MinecraftSettings.kt (revision 52b2f0be809a6d4c201f242ce5a1272e8cffbc4e) +++ src/main/kotlin/MinecraftSettings.kt (revision 0516217386a9dd75a96c94c3fa8f33edce86701f) @@ -3,7 +3,7 @@ * * https://mcdev.io/ * - * Copyright (C) 2025 minecraft-dev + * Copyright (C) 2026 minecraft-dev * * This program is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License as published @@ -90,7 +90,7 @@ override fun loadState(state: State) { this.state = state if (state.creatorTemplateRepos.isEmpty()) { - state.creatorTemplateRepos = listOf() + state.creatorTemplateRepos = listOf(TemplateRepo.makeBuiltinRepo()) } } @@ -140,7 +140,8 @@ var creatorTemplateRepos: List get() = state.creatorTemplateRepos.map { it.copy() } set(creatorTemplateRepos) { - state.creatorTemplateRepos = creatorTemplateRepos.map { it.copy() } + state.creatorTemplateRepos = creatorTemplateRepos.ifEmpty { listOf(TemplateRepo.makeBuiltinRepo()) } + .map { it.copy() } } var creatorMavenRepos: List Index: src/main/kotlin/creator/custom/CustomPlatformStep.kt =================================================================== --- src/main/kotlin/creator/custom/CustomPlatformStep.kt (revision 52b2f0be809a6d4c201f242ce5a1272e8cffbc4e) +++ src/main/kotlin/creator/custom/CustomPlatformStep.kt (revision 0516217386a9dd75a96c94c3fa8f33edce86701f) @@ -215,7 +215,7 @@ private fun initTemplates() { selectedTemplate = EmptyLoadedTemplate - templateRepoProperty.set(templateRepos.first()) + templateRepoProperty.set(templateRepos.firstOrNull() ?: MinecraftSettings.TemplateRepo.makeBuiltinRepo()) val indicator = CreatorProgressIndicator( templateProvidersLoadingProperty, Index: src/main/kotlin/creator/custom/TemplateRepoTable.kt =================================================================== --- src/main/kotlin/creator/custom/TemplateRepoTable.kt (revision 52b2f0be809a6d4c201f242ce5a1272e8cffbc4e) +++ src/main/kotlin/creator/custom/TemplateRepoTable.kt (revision 0516217386a9dd75a96c94c3fa8f33edce86701f) @@ -97,6 +97,7 @@ val decoratedTable = ToolbarDecorator.createDecorator(table) .setPreferredSize(Dimension(JBUI.scale(300), JBUI.scale(200))) + .setRemoveActionUpdater { table.rowCount > 1 } .setEditActionUpdater { val selectedRepo = table.selection.firstOrNull() ?: return@setEditActionUpdater false