X-Git-Url: https://git.ktnx.net/?p=mobile-ledger.git;a=blobdiff_plain;f=app%2Fsrc%2Fmain%2Fjava%2Fnet%2Fktnx%2Fmobileledger%2FTransactionListActivity.java;h=77d2d671bd9c1a8dd9bb390eee4c0dc1f25b8076;hp=39323f7bf6b18a930660b1509404ac8fc76571a9;hb=c0606b8968fd0d79e5f2ddada29b650d536fdc93;hpb=1857937cbdb55199cb9391a7b42766d6dcba80c8 diff --git a/app/src/main/java/net/ktnx/mobileledger/TransactionListActivity.java b/app/src/main/java/net/ktnx/mobileledger/TransactionListActivity.java index 39323f7b..77d2d671 100644 --- a/app/src/main/java/net/ktnx/mobileledger/TransactionListActivity.java +++ b/app/src/main/java/net/ktnx/mobileledger/TransactionListActivity.java @@ -44,10 +44,10 @@ import java.util.Date; import java.util.List; public class TransactionListActivity extends AppCompatActivity { + public TransactionListViewModel model; private SwipeRefreshLayout swiper; private RecyclerView root; private ProgressBar progressBar; - public TransactionListViewModel model; private TextView tvLastUpdate; private TransactionListAdapter modelAdapter; @Override @@ -68,21 +68,7 @@ public class TransactionListActivity extends AppCompatActivity { if (progressBar == null) throw new RuntimeException("Can't get hold on the transaction list progress bar"); tvLastUpdate = findViewById(R.id.transactions_last_update); - { - long last_update = MLDB.get_option_value(this, "transaction_list_last_update", 0L); - Log.d("transactions", String.format("Last update = %d", last_update)); - if (last_update == 0) tvLastUpdate.setText("never"); - else { - Date date = new Date(last_update); - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { - tvLastUpdate.setText(date.toInstant().atZone(ZoneId.systemDefault()) - .format(DateTimeFormatter.ISO_LOCAL_DATE_TIME)); - } - else { - tvLastUpdate.setText(date.toLocaleString()); - } - } - } + updateLastUpdateText(); model = ViewModelProviders.of(this).get(TransactionListViewModel.class); List transactions = model.getTransactions(getApplicationContext()); modelAdapter = new TransactionListAdapter(transactions); @@ -152,22 +138,28 @@ public class TransactionListActivity extends AppCompatActivity { } public void onRetrieveDone(boolean success) { - progressBar.setVisibility(View.GONE); + progressBar.setVisibility(View.INVISIBLE); swiper.setRefreshing(false); + updateLastUpdateText(); if (success) { - Date now = new Date(); - MLDB.set_option_value(getApplicationContext(), "transaction_list_last_update", - now.getTime()); - updateLastUpdateText(now); modelAdapter.notifyDataSetChanged(); } } - private void updateLastUpdateText(Date now) { - if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { - tvLastUpdate.setText(now.toInstant().atZone(ZoneId.systemDefault()).toString()); - } - else { - tvLastUpdate.setText(now.toLocaleString()); + private void updateLastUpdateText() { + { + long last_update = MLDB.get_option_value(this, MLDB.OPT_TRANSACTION_LIST_STAMP, 0L); + Log.d("transactions", String.format("Last update = %d", last_update)); + if (last_update == 0) tvLastUpdate.setText(getString(R.string.transaction_last_update_never)); + else { + Date date = new Date(last_update); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) { + tvLastUpdate.setText(date.toInstant().atZone(ZoneId.systemDefault()) + .format(DateTimeFormatter.ISO_LOCAL_DATE_TIME)); + } + else { + tvLastUpdate.setText(date.toLocaleString()); + } + } } } }