make AccountSummaryViewModel a static class
authorDamyan Ivanov <dam+mobileledger@ktnx.net>
Tue, 29 Jan 2019 19:56:38 +0000 (21:56 +0200)
committerDamyan Ivanov <dam+mobileledger@ktnx.net>
Tue, 29 Jan 2019 19:56:38 +0000 (21:56 +0200)
creating an instance fails in release builds and there is nothing dynamic
there so a static class seems ok

app/src/main/java/net/ktnx/mobileledger/ui/account_summary/AccountSummaryFragment.java
app/src/main/java/net/ktnx/mobileledger/ui/account_summary/AccountSummaryViewModel.java

index 6ce84c7..b6943ad 100644 (file)
@@ -17,7 +17,6 @@
 
 package net.ktnx.mobileledger.ui.account_summary;
 
-import android.arch.lifecycle.ViewModelProviders;
 import android.content.Context;
 import android.content.SharedPreferences;
 import android.os.Bundle;
@@ -50,7 +49,6 @@ import static net.ktnx.mobileledger.ui.activity.SettingsActivity.PREF_KEY_SHOW_O
 public class AccountSummaryFragment extends MobileLedgerListFragment {
 
     MenuItem mShowOnlyStarred;
-    private AccountSummaryViewModel model;
     private AccountSummaryAdapter modelAdapter;
     private Menu optMenu;
     private FloatingActionButton fab;
@@ -98,7 +96,6 @@ public class AccountSummaryFragment extends MobileLedgerListFragment {
         Log.d("flow", "AccountSummaryFragment.onActivityCreated()");
         super.onActivityCreated(savedInstanceState);
 
-        model = ViewModelProviders.of(this).get(AccountSummaryViewModel.class);
         modelAdapter = new AccountSummaryAdapter();
 
         root = mActivity.findViewById(R.id.account_root);
@@ -164,13 +161,13 @@ public class AccountSummaryFragment extends MobileLedgerListFragment {
         Data.accounts.addObserver(
                 (o, arg) -> mActivity.runOnUiThread(() -> modelAdapter.notifyDataSetChanged()));
         Data.profile.addObserver(
-                (o, arg) -> mActivity.runOnUiThread(() -> model.scheduleAccountListReload()));
+                (o, arg) -> mActivity.runOnUiThread(() -> AccountSummaryViewModel.scheduleAccountListReload()));
         update_account_table();
     }
     private void update_account_table() {
         if (this.getContext() == null) return;
 
-        model.scheduleAccountListReload();
+        AccountSummaryViewModel.scheduleAccountListReload();
     }
     void stopSelection() {
         modelAdapter.stopSelection();
index 2234d3c..574665b 100644 (file)
@@ -35,7 +35,7 @@ class AccountSummaryViewModel extends ViewModel {
         task.execute(
                 new CommitAccountsTaskParams(Data.accounts.get(), Data.optShowOnlyStarred.get()));
     }
-    void scheduleAccountListReload() {
+    static void scheduleAccountListReload() {
         if (Data.profile.get() == null) return;
 
         UAT task = new UAT();