import net.ktnx.mobileledger.ui.profiles.ProfileDetailFragment;
import net.ktnx.mobileledger.ui.profiles.ProfilesRecyclerViewAdapter;
import net.ktnx.mobileledger.ui.transaction_list.TransactionListFragment;
+import net.ktnx.mobileledger.ui.transaction_list.TransactionListViewModel;
import net.ktnx.mobileledger.utils.Colors;
import net.ktnx.mobileledger.utils.MLDB;
protected void onStart() {
super.onStart();
- Data.lastUpdateDate.set(null);
+ setupProfile();
+
updateLastUpdateTextFromDB();
Date lastUpdate = Data.lastUpdateDate.get();
Data.lastUpdateDate.addObserver((o, arg) -> {
Log.d("main", "lastUpdateDate changed");
- runOnUiThread(() -> {
- Date date = Data.lastUpdateDate.get();
- if (date == null) {
- tvLastUpdate.setText(R.string.transaction_last_update_never);
- }
- else {
- final String text = DateFormat.getDateTimeInstance().format(date);
- tvLastUpdate.setText(text);
- Log.d("despair", String.format("Date formatted: %s", text));
- }
- });
+ runOnUiThread(this::updateLastUpdateDisplay);
});
+ updateLastUpdateDisplay();
+
findViewById(R.id.btn_no_profiles_add)
.setOnClickListener(v -> startEditProfileActivity(null));
profileListHeadMore.setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles());
profileListHeadCancel.setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles());
- profileListHeadMoreAndCancel.setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles());
+ profileListHeadMoreAndCancel
+ .setOnClickListener((v) -> mProfileListAdapter.flipEditingProfiles());
drawer.addDrawerListener(new DrawerLayout.SimpleDrawerListener() {
@Override
}
});
}
+ private void updateLastUpdateDisplay() {
+ TextView v = findViewById(R.id.transactions_last_update);
+ Date date = Data.lastUpdateDate.get();
+ if (date == null) {
+ v.setText(R.string.transaction_last_update_never);
+ Log.d("main", "no last update date :(");
+ }
+ else {
+ final String text = DateFormat.getDateTimeInstance().format(date);
+ v.setText(text);
+ Log.d("main", String.format("Date formatted: %s", text));
+ }
+ }
private void profileThemeChanged() {
setupProfileColors();
intent.putExtra(BUNDLE_SAVED_STATE, bundle);
startActivity(intent);
}
- @Override
- protected void onResume() {
- super.onResume();
- setupProfile();
- }
public void startEditProfileActivity(MobileLedgerProfile profile) {
Intent intent = new Intent(this, ProfileDetailActivity.class);
Bundle args = new Bundle();
updateLastUpdateTextFromDB();
new RefreshDescriptionsTask().executeOnExecutor(AsyncTask.THREAD_POOL_EXECUTOR);
+ TransactionListViewModel.scheduleTransactionListReload();
}
else Toast.makeText(this, error, Toast.LENGTH_LONG).show();
}
profileListHeadArrow.startAnimation(AnimationUtils.loadAnimation(this, R.anim.rotate_180));
profileListHeadMore.setVisibility(View.VISIBLE);
profileListHeadMore.startAnimation(AnimationUtils.loadAnimation(this, R.anim.fade_in));
+ findViewById(R.id.nav_profile_list).setMinimumHeight(
+ (int) (getResources().getDimension(R.dimen.thumb_row_height) *
+ Data.profiles.size()));
}
private void collapseProfileList() {
profileListExpanded = false;