From 7143d28d68fee0d45f80cc2ee781b37b7a835dbb Mon Sep 17 00:00:00 2001 From: chaneylc Date: Wed, 12 Jul 2023 16:00:48 -0500 Subject: [PATCH] code improvement --- .../fieldbook/tracker/activities/ConfigActivity.java | 10 ++++++++-- .../com/fieldbook/tracker/utilities/FieldSwitchImpl.kt | 3 +++ 2 files changed, 11 insertions(+), 2 deletions(-) diff --git a/app/src/main/java/com/fieldbook/tracker/activities/ConfigActivity.java b/app/src/main/java/com/fieldbook/tracker/activities/ConfigActivity.java index a996ce6f5..d3d838176 100644 --- a/app/src/main/java/com/fieldbook/tracker/activities/ConfigActivity.java +++ b/app/src/main/java/com/fieldbook/tracker/activities/ConfigActivity.java @@ -115,9 +115,8 @@ public class ConfigActivity extends ThemedActivity { @Inject public DataHelper database; @Inject - public FieldSwitchImpl fieldSwitcher; - @Inject public SoundHelperImpl soundHelper; + public FieldSwitchImpl fieldSwitcher = null; Handler mHandler = new Handler(); boolean doubleBackToExitPressedOnce = false; ListView settingsList; @@ -341,6 +340,9 @@ private void loadScreen() { .initiateScan(); }); + //this must happen after migrations and can't be injected in config + fieldSwitcher = new FieldSwitchImpl(this); + } /** @@ -991,6 +993,10 @@ public void selectFirstField() { */ private void switchField(int studyId) { + if (fieldSwitcher == null) { + fieldSwitcher = new FieldSwitchImpl(this); + } + fieldSwitcher.switchField(studyId); } diff --git a/app/src/main/java/com/fieldbook/tracker/utilities/FieldSwitchImpl.kt b/app/src/main/java/com/fieldbook/tracker/utilities/FieldSwitchImpl.kt index 141a41c32..8360c17fd 100644 --- a/app/src/main/java/com/fieldbook/tracker/utilities/FieldSwitchImpl.kt +++ b/app/src/main/java/com/fieldbook/tracker/utilities/FieldSwitchImpl.kt @@ -22,6 +22,9 @@ class FieldSwitchImpl @Inject constructor(@ActivityContext private val context: } override fun switchField(studyId: Int) { + if (!::database.isInitialized) { + database = DataHelper(context) + } val f = database.getFieldObject(studyId) switchField(f) }