diff --git a/.idea/compiler.xml b/.idea/compiler.xml
index 9cbda7898..0c719c9df 100644
--- a/.idea/compiler.xml
+++ b/.idea/compiler.xml
@@ -18,14 +18,14 @@
-
+
-
+
diff --git a/.idea/deploymentTargetDropDown.xml b/.idea/deploymentTargetDropDown.xml
deleted file mode 100644
index ee4ef19f0..000000000
--- a/.idea/deploymentTargetDropDown.xml
+++ /dev/null
@@ -1,17 +0,0 @@
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
-
\ No newline at end of file
diff --git a/app/src/main/java/com/itsaky/androidide/activities/MainActivity.kt b/app/src/main/java/com/itsaky/androidide/activities/MainActivity.kt
index 3c86f669f..258107ee6 100755
--- a/app/src/main/java/com/itsaky/androidide/activities/MainActivity.kt
+++ b/app/src/main/java/com/itsaky/androidide/activities/MainActivity.kt
@@ -44,7 +44,6 @@ import com.itsaky.androidide.preferences.internal.statConsentDialogShown
import com.itsaky.androidide.preferences.internal.statOptIn
import com.itsaky.androidide.projects.ProjectManager.projectPath
import com.itsaky.androidide.resources.R.string
-import com.itsaky.androidide.templates.ITemplateProvider
import com.itsaky.androidide.utils.DialogUtils
import com.itsaky.androidide.utils.Environment
import com.itsaky.androidide.utils.flashError
@@ -156,18 +155,6 @@ class MainActivity : LimitlessIDEActivity() {
binding.fragmentContainersParent.setPadding(insets.left, 0, insets.right, insets.bottom)
}
- override fun onStart() {
- super.onStart()
- ITemplateProvider.getInstance(reload = true)
- }
-
- override fun onStop() {
- super.onStop()
- if (ITemplateProvider.isLoaded()) {
- ITemplateProvider.getInstance().clear()
- }
- }
-
private fun onScreenChanged(screen: Int?) {
val previous = viewModel.previousScreen
if (previous != -1) {
diff --git a/app/src/main/java/com/itsaky/androidide/fragments/TemplateListFragment.kt b/app/src/main/java/com/itsaky/androidide/fragments/TemplateListFragment.kt
index 4a1c2cf49..6715723d1 100644
--- a/app/src/main/java/com/itsaky/androidide/fragments/TemplateListFragment.kt
+++ b/app/src/main/java/com/itsaky/androidide/fragments/TemplateListFragment.kt
@@ -102,6 +102,7 @@ class TemplateListFragment : FragmentWithBinding(
override fun onDestroyView() {
binding.list.viewTreeObserver.removeOnGlobalLayoutListener(globalLayoutListener)
+ ITemplateProvider.getInstance().clear()
super.onDestroyView()
}
diff --git a/templates-impl/src/main/java/com/itsaky/androidide/templates/impl/TemplateProviderImpl.kt b/templates-impl/src/main/java/com/itsaky/androidide/templates/impl/TemplateProviderImpl.kt
index 2cd49f5e1..96e681d0b 100644
--- a/templates-impl/src/main/java/com/itsaky/androidide/templates/impl/TemplateProviderImpl.kt
+++ b/templates-impl/src/main/java/com/itsaky/androidide/templates/impl/TemplateProviderImpl.kt
@@ -39,9 +39,11 @@ import com.itsaky.androidide.templates.impl.tabbedActivity.tabbedActivityProject
@AutoService(ITemplateProvider::class)
class TemplateProviderImpl : ITemplateProvider {
- private val templates = mutableMapOf>().apply {
+ private val templates = mutableMapOf>()
+
+ init {
templates().forEach { template ->
- this[template.templateId] = template
+ templates[template.templateId] = template
}
}