]> git.ktnx.net Git - mobile-ledger.git/blobdiff - app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java
drop now unused MLDB class along with its async db routines
[mobile-ledger.git] / app / src / main / java / net / ktnx / mobileledger / ui / activity / MainActivity.java
index 945e81c51043d0865a80d0d83bb4344b1d22681d..55392876fd9f54882d98ca27ae46bb81ee1fd0f7 100644 (file)
@@ -53,6 +53,7 @@ import net.ktnx.mobileledger.R;
 import net.ktnx.mobileledger.async.RetrieveTransactionsTask;
 import net.ktnx.mobileledger.databinding.ActivityMainBinding;
 import net.ktnx.mobileledger.db.DB;
+import net.ktnx.mobileledger.db.Option;
 import net.ktnx.mobileledger.db.Profile;
 import net.ktnx.mobileledger.model.Data;
 import net.ktnx.mobileledger.ui.FabManager;
@@ -65,7 +66,6 @@ import net.ktnx.mobileledger.ui.templates.TemplatesActivity;
 import net.ktnx.mobileledger.ui.transaction_list.TransactionListFragment;
 import net.ktnx.mobileledger.utils.Colors;
 import net.ktnx.mobileledger.utils.Logger;
-import net.ktnx.mobileledger.utils.MLDB;
 
 import org.jetbrains.annotations.NotNull;
 
@@ -383,6 +383,12 @@ public class MainActivity extends ProfileThemedActivity implements FabManager.Fa
         mProfileListAdapter.setProfileList(newList);
 
         createShortcuts(newList);
+
+        Profile currentProfile = Data.getProfile();
+        if (currentProfile == null || !newList.contains(currentProfile)) {
+            Logger.debug(TAG, "Switching profile because the current is no longer available");
+            Data.setCurrentProfile(newList.get(0));
+        }
     }
     /**
      * called when the current profile has changed
@@ -537,7 +543,7 @@ public class MainActivity extends ProfileThemedActivity implements FabManager.Fa
 
         DB.get()
           .getOptionDAO()
-          .load(profile.getId(), MLDB.OPT_LAST_SCRAPE)
+          .load(profile.getId(), Option.OPT_LAST_SCRAPE)
           .observe(this, opt -> {
               long lastUpdate = 0;
               if (opt != null) {
@@ -609,14 +615,16 @@ public class MainActivity extends ProfileThemedActivity implements FabManager.Fa
             b.transactionProgressLayout.setVisibility(View.GONE);
         }
     }
-    public void onRetrieveProgress(RetrieveTransactionsTask.Progress progress) {
-        if (progress.getState() == RetrieveTransactionsTask.ProgressState.FINISHED) {
+    public void onRetrieveProgress(@Nullable RetrieveTransactionsTask.Progress progress) {
+        if (progress == null ||
+            progress.getState() == RetrieveTransactionsTask.ProgressState.FINISHED)
+        {
             Logger.debug("progress", "Done");
             b.transactionProgressLayout.setVisibility(View.GONE);
 
             mainModel.transactionRetrievalDone();
 
-            String error = progress.getError();
+            String error = (progress == null) ? null : progress.getError();
             if (error != null) {
                 if (error.equals(RetrieveTransactionsTask.Result.ERR_JSON_PARSER_ERROR))
                     error = getResources().getString(R.string.err_json_parser_error);