X-Git-Url: https://git.ktnx.net/?a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2Fui%2Factivity%2FMainActivity.java;h=dc4645bcafbeadb4d0f4c4695156e983ba931dbb;hb=5989f5a490a6e212bffc3f50fa2fd6e5a07d4b37;hp=03617c5923c8fe9ef1f431bc35c86e13ebc0e2ac;hpb=9a56eed6dcbfe4434a9a46b198320c16b288d86f;p=mobile-ledger-staging.git diff --git a/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java b/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java index 03617c59..dc4645bc 100644 --- a/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/ui/activity/MainActivity.java @@ -336,6 +336,7 @@ public class MainActivity extends ProfileThemedActivity { Data.locale.observe(this, l -> refreshLastUpdateInfo()); Data.lastUpdateDate.observe(this, date -> refreshLastUpdateInfo()); Data.lastUpdateTransactionCount.observe(this, date -> refreshLastUpdateInfo()); + Data.lastUpdateAccountCount.observe(this, date -> refreshLastUpdateInfo()); } private void scheduleDataRetrievalIfStale(long lastUpdate) { long now = new Date().getTime(); @@ -438,6 +439,7 @@ public class MainActivity extends ProfileThemedActivity { mProfileListAdapter.notifyDataSetChanged(); + mainModel.clearAccounts(); mainModel.clearTransactions(); if (haveProfile) { @@ -468,6 +470,7 @@ public class MainActivity extends ProfileThemedActivity { Data.removeProfileObservers(this); Data.profiles.removeObservers(this); Data.lastUpdateTransactionCount.removeObservers(this); + Data.lastUpdateAccountCount.removeObservers(this); Data.lastUpdateDate.removeObservers(this); recreate(); @@ -572,13 +575,27 @@ public class MainActivity extends ProfileThemedActivity { private void refreshLastUpdateInfo() { final int formatFlags = DateUtils.FORMAT_SHOW_DATE | DateUtils.FORMAT_SHOW_YEAR | DateUtils.FORMAT_SHOW_TIME | DateUtils.FORMAT_NUMERIC_DATE; - String template = getResources().getString(R.string.transaction_count_summary); + String templateForTransactions = + getResources().getString(R.string.transaction_count_summary); + String templateForAccounts = getResources().getString(R.string.account_count_summary); + Integer accountCount = Data.lastUpdateAccountCount.getValue(); Integer transactionCount = Data.lastUpdateTransactionCount.getValue(); Date lastUpdate = Data.lastUpdateDate.getValue(); - Data.lastUpdateText.set((lastUpdate == null) ? "----" : String.format( - Objects.requireNonNull(Data.locale.getValue()), template, - (transactionCount == null) ? 0 : transactionCount, - DateUtils.formatDateTime(this, lastUpdate.getTime(), formatFlags))); + if (lastUpdate == null) { + Data.lastTransactionsUpdateText.set("----"); + Data.lastAccountsUpdateText.set("----"); + } + else { + Data.lastTransactionsUpdateText.set( + String.format(Objects.requireNonNull(Data.locale.getValue()), + templateForTransactions, + transactionCount == null ? 0 : transactionCount, + DateUtils.formatDateTime(this, lastUpdate.getTime(), formatFlags))); + Data.lastAccountsUpdateText.set( + String.format(Objects.requireNonNull(Data.locale.getValue()), + templateForAccounts, accountCount == null ? 0 : accountCount, + DateUtils.formatDateTime(this, lastUpdate.getTime(), formatFlags))); + } } public void onStopTransactionRefreshClick(View view) { Logger.debug("interactive", "Cancelling transactions refresh");